2003年早春,中国软件行业冰雪消融。
时任微软掌舵人的比尔·盖茨春风得意,他的windows成为了新千年中美破冰计划的重要一环。微软和中国信息安全产品测评认证中心签署了源代码备案协议,以共享源代码的形式换取中国市场。
此时,新浪、网易、搜狐已经在纳斯达克上市,腾讯还有一年就要登上纳斯达克,互联网的热风让整个软件行业躁动起来。这场“源码盛宴”下,几乎所有大型软件从业者都摩拳擦掌,仿佛走到餐桌旁就能成为赢家。
后续的发展却迅速击碎了他们“市场换技术”的美梦。
来自各个单位和研究院所的技术专家们来到代码审查中心大失所望。微软很好履行了协议,在当年完全开放了windows 2000和windows xp的全部源代码。然而所谓的“开放”与国内大型软件从业者的理解大相径庭,代码必须部署在协议规定的审查中心,查阅代码时不允许携带存储设备,演算的纸笔也不能带出。
技术专家们恍惚间回到了20年前那间放着超级计算机的玻璃房子,买来的超级计算机被放在一间玻璃房内,房间钥匙由美方人员保管,中国科学家经过授权才能进入玻璃房,并且得在美方监视下上机操作。超级计算机运算的内容,必须经过美方允许。操作完成后,美方会马上封锁玻璃房。监控日志还要定期上交给美国政府审查。
被隔离在玻璃房中的超级计算机
现在看来,向微软这类大型软件企业求自主,妄图通过中国市场换取技术成长,获取技术主导权,无异于与虎谋皮,关键核心技术是要不来、买不来、讨不来的。作为依靠商业软件生存的企业,无论是再美好的技术开放和技术合作,最终都会露出逐利的一面,成为追逐利润的一个环节。
向商业公司要自主的中国工程师们没有讨来一场大型软件行业的盛宴,反而迎来了国外商业公司对孱弱的中国软件行业的一场屠杀,无奈下将目光转到了开源软件上。
从校园走出的开源火种
中国和开源的结识时间,比大多人想得都要早。
1999年,gnu的richard stallman第一次来到中国,在清华大学做了一次演讲。从校园中走出了红旗linux、蓝点linux这样一批围绕linux的大型操作系统软件。我们现在日常使用的浏览器、播放器、压缩软件等工具,他们对应的开源原型软件像chromium、ffmpeg、7-zip也都在那几年推出了用户版本。
在开源软件的加持下,中国软件人的创造力和执行力如有神助。回望几次软件行业的繁荣,根源都能够找到引发技术爆炸的开源软件。像前些年的浏览器大战,无论是360、qq、猎豹、uc,浏览器内核都是一个叫chromium的开源浏览器内核。
对于比尔·盖茨来说,2007年喜忧参半。喜的是当年的源代码备案协议让中国市场和微软紧紧绑在一起,中国在2007年再次签署新一轮协议获取windows vista和windows 7。也正是在同一年,比尔·盖茨在北大演讲时被闯入的学生举起“free software,open source”海报抗议,差点提前12年上演“宏颜获水”。
开源支持者闯入演讲现场抗议
这一年也是开源社区开始爆发的一年,各类社区如雨后春笋般冒出来。
这一年,也是中国开源先锋中科红旗盛极而衰的一年。
红旗linux的困兽之斗
红旗linux到2007年走过了八年。八年回首,曾经一起前行的其他国产linux厂商都黯然离场,蓝点转做嵌入式系统定制,联想早就叫停了魔改linux的幸福之家幸福linux的研发。
软件的最终目的是为了服务用户,用户使用软件是为了解决问题。开源软件似乎天生和商业公司不合,中科红旗的业务越拓展,越感受到了与开源软件本身的矛盾。
红旗linux系统
开源软件的关键在于社区的支持,能够有持续的生命力对软件进行维护。从另一面说,用户就必须接受一个简陋的初始版本,达到可用状态需要厂商的支持,厂商再将在支持过程中产生的新方法、特性反馈给社区实现软件的迭代。
然而,当用户需求与社区规划背离,厂商就陷入了尴尬境地。中科红旗投入了大量人力为用户进行系统的定制开发,却没有与社区的沟通机制,产品与开源本体走得越来越远,陷入了闭门造车的困境:投入人力满足用户需求则与开源本体背离,无法利用开源社区节省工作量,则更需要加大人力投入,从而陷入恶性循环中。
中科红旗作为厂商,没有社区的话语权,在商业化下的用户需求和开源软件的社区发展之间反复拉扯,精力逐渐耗尽。开源社区的飞速发展,反而加速了中科红旗人才和技术能力的流失。
随着2014年中科红旗倒闭,中国软件人在开源软件的第一次大规模系统性尝试走向了尾声,陷入了迷茫时代。很多企业对于开源的理解都走错了路,把软件开源当成简单的 “混脸熟”。有些成为了“为了开源而开源”的工具人,跟在了西方开源软件的屁股后面做代码修理工。
没有自研,就没有开源
2010年前后是一个奇妙的原点,似乎每一个在今天有竞争力的行业都在那一年觉醒。中国大型软件的迷茫时代在这一年结束,开拓时代就此展开。
当红旗linux在开源与生存间艰难摸索时,2009年阿里顶着各方质疑和压力上马阿里云,随后2010年夏天在杭州正式开源第一行代码,开始了轰轰烈烈的技术长征。
经历了整整十年,如今阿里云已稳居中国第一、全球前三;同时,阿里开源项目数超过1700个,覆盖大数据、云原生、ai、数据库、中间件、硬件等多个领域,多个开源项目成为行业事实标准,成为无数公司的技术底座。
没有自研,就没有开源。开源项目是一个个取之可用的水龙头,自研技术就是保证水源持续供应的天然水库。
如果你打开github开源贡献名单的排行榜,会看到排在前列的是微软、谷歌、red hat这些顶级技术公司。除了二十多年来专注提供开源和记娱乐手机版的解决方案的red hat以外,其余皆用跨时代的技术创新开创了一个新时代:微软打造“windows”为人类打开了一扇新的窗,谷歌创造了简单的方框连接全球万物信息。
而在排行榜之首的中国公司阿里,刚刚走过20周年,经历了从商业驱动技术进步到技术创造新商业的蝶变,研发投入连续三年位列中国上市企业之首,积累了厚实的自研技术和开放的技术文化。
阿里自研技术,是被一点点逼出来的。
阿里的业务场景不仅复杂,业务转型比大多数同行都要来得快,双11更面临世界绝无仅有的并发流量洪峰,无论是多年前的移动互联网时代、兴起的ai时代、还是已经到来的数字经济时代,阿里始终走在技术无人区,以前瞻性的战略眼光和坚定的数十年投入开辟新的技术之巅。
回到2008年,当时天猫还叫淘宝商城,它和淘宝各自拥有一套it系统,商品库和店铺系统互不相通。做一个业务建一套系统,这是传统的企业it模式。阿里巴巴最早体察到其中弊端,对内效率低下、成本高企,对用户,毫无体验可言。
业务端的嗅觉促使技术团队启动五彩石项目——拆除独立的it“烟囱”,打通两个网站的业务和数据系统,为前端提供公共模块灵活调用。五彩石项目对阿里系统进行了分布式化的改造,首次在架构层面引入中间件。
当时业界都面临相似问题,苦于没有好的框架。阿里把内部中间件技术成果以开源形式开放出去,其中之一的代表就是高性能服务框架dubbo。
现任负责项目的阿里高级技术专家北纬回忆到,“dubbo一开源出去,除了互联网的,做汽车的、做证券的、搞水泥、电器都成为我们用户,甚至有公司愿意付钱,希望出现问题可以请团队的开发人员帮忙。”
apache dubbo 改变了中国整整一代的it架构。
此外,阿里为了管理双11大量服务器之间的海量消息流转,自主研发了高性能、低延迟的分布式消息队列rocketmq,很快将其引擎捐赠给社区成了apache rocketmq,现在是今日头条、饿了么、网易、微众银行、滴滴、海尔、oppo众公司建设在线消息数据中台的不二首选。
apache dubbo、apache rocketmq等是在阿里业务战略升级中孵化出来的技术创新,也是阿里对开源重要的贡献之一,但这不是全部。早在2017年,由阿里贡献的openmessaging就成为首个由中国发起的分布式计算领域国际标准。
阿里也是最早对大数据进行系统性思考的中国企业之一。以五彩石项目为起点的技术长征,发端于2007年的一次战略会议,高管们制定了雄心勃勃的“登月计划”——打通经济体的信息流、资金流和物流,靠技术去挖掘数据的价值,向技术要生产力。
如何才能最大化释放数据的价值?阿里发现不但要数据规模化,最关键的是实时化。最早,阿里内部大规模使用开源工具hadoop,很快发现无法支持业务需求。以2019年双11为例,apache flink 突破了实时计算消息处理峰值25亿条/秒的记录。放眼望去,没有一个开源数据引擎曾经面对这个级别的数据体量挑战。
很快阿里从批量处理转入到流处理,降维式大规模引入了flink。通过三年双11的大规模实战检验,阿里在流计算和批处理上积累了大量新功能,实现性能快速提升,并把探索出来的成果第一时间反馈给flink社区,半年时间就向社区回馈了 120 万代码,flink技术架构不断趋于成熟。
事实证明,实时化是数据处理真正的未来,通过用户实时反馈、实时计算,从而瞬间决定产品内容的呈现形态,具有神奇的魔力。如今,今日头条、抖音、快手、b站、爱奇艺、斗鱼直播、新浪微博等几乎所有信息流产品,都在使用apache flink 建设新一代的大数据流处理平台,也让所有人真正迎来了大规模千人千面的个性化时代。
如今中国市值top20的互联网公司基本都在采用flink
阿里的前瞻性技术投入,再次得到了验证。
oppo最开始使用spark,自18年尝试使用flink后,短短不到2年时间里,基本所有互联网业务团队都转而拥抱flink,服务全球上亿用户。“经过云上大规模场景锤炼, flink 不管是从架构设计还是技术迭代上看,都代表着当前最新的生产力。”oppo大数据平台研发负责人张俊介绍道,现在大量数据报表、实时推荐、效果分析都依赖于flink对于数据的加工处理,产品迭代速度有了飞跃性提升。
2019年冬天,张俊受邀北上参加flink峰会,面向数千名大数据开发者分享,他有点激动。“以前很多人空有开源热情,很难融入国际顶级开源社区。自从apache社区出现越来越多阿里顶级项目后,我们才发现原来做一名pmc、contributor,好像也不是很难。”
如今,阿里巴巴对于开源精神的追求已经不局限于软件层面。平头哥今年发布的玄铁芯片平台直接触碰到了计算机底层的硬件平台开源,利用risc-v开源指令集尝试将开源精神传递到传统芯片领域。
从共享走向普惠,云和开源的殊途同归
在我们享受中国科技飞跃发展的同时,无数人还在这场竞争的跑道上跌倒、爬起、冲刺,为掌握核心技术避免遭遇当年超级计算机外玻璃房子的屈辱。
阿里云逐渐从一家单纯的云基础设施提供商,变成云的智能化提供商:从大数据、ai、iot到协同办公,以及今后软硬件一体化的云平台,成为数字经济时代的基础设施。各行各业全面上云,前所未有的云上数字化转型场景成为开源软件最大的练兵场。
云生态的本体始于共享,与开源本身一脉相承;最终殊途同归,走向普惠。阿里把两者都做到了极致。
经历20年探索,如今的阿里不仅把自研技术作为核心驱动力,更通过开源和云让技术的飞轮转动起来,为世界创造下一代的技术红利。
一切,才刚刚开始。
雷锋网雷锋网(公众号:雷锋网)雷锋网