2003年早春,中國軟件行業(yè)冰雪消融。
時任微軟掌舵人的比爾·蓋茨春風得意,他的Windows成為了新千年中美破冰計劃的重要一環(huán)。微軟和中國信息安全產品測評認證中心簽署了源代碼備案協(xié)議,以共享源代碼的形式換取中國市場。
此時,新浪、網(wǎng)易、搜狐已經在納斯達克上市,騰訊還有一年就要登上納斯達克,互聯(lián)網(wǎng)的熱風讓整個軟件行業(yè)躁動起來。這場“源碼盛宴”下,幾乎所有大型軟件從業(yè)者都摩拳擦掌,仿佛走到餐桌旁就能成為贏家。
后續(xù)的發(fā)展卻迅速擊碎了他們“市場換技術”的美夢。
來自各個單位和研究院所的技術專家們來到代碼審查中心大失所望。微軟很好履行了協(xié)議,在當年完全開放了Windows 2000和Windows XP的全部源代碼。然而所謂的“開放”與國內大型軟件從業(yè)者的理解大相徑庭,代碼必須部署在協(xié)議規(guī)定的審查中心,查閱代碼時不允許攜帶存儲設備,演算的紙筆也不能帶出。
技術專家們恍惚間回到了20年前那間放著超級計算機的玻璃房子,買來的超級計算機被放在一間玻璃房內,房間鑰匙由美方人員保管,中國科學家經過授權才能進入玻璃房,并且得在美方監(jiān)視下上機操作。超級計算機運算的內容,必須經過美方允許。操作完成后,美方會馬上封鎖玻璃房。監(jiān)控日志還要定期上交給美國政府審查。
被隔離在玻璃房中的超級計算機
現(xiàn)在看來,向微軟這類大型軟件企業(yè)求自主,妄圖通過中國市場換取技術成長,獲取技術主導權,無異于與虎謀皮,關鍵核心技術是要不來、買不來、討不來的。作為依靠商業(yè)軟件生存的企業(yè),無論是再美好的技術開放和技術合作,最終都會露出逐利的一面,成為追逐利潤的一個環(huán)節(jié)。
向商業(yè)公司要自主的中國工程師們沒有討來一場大型軟件行業(yè)的盛宴,反而迎來了國外商業(yè)公司對孱弱的中國軟件行業(yè)的一場屠殺,無奈下將目光轉到了開源軟件上。
從校園走出的開源火種
中國和開源的結識時間,比大多人想得都要早。
1999年,GNU的Richard Stallman第一次來到中國,在清華大學做了一次演講。從校園中走出了紅旗Linux、藍點Linux這樣一批圍繞Linux的大型操作系統(tǒng)軟件。我們現(xiàn)在日常使用的瀏覽器、播放器、壓縮軟件等工具,他們對應的開源原型軟件像chromium、FFmpeg、7-zip也都在那幾年推出了用戶版本。
在開源軟件的加持下,中國軟件人的創(chuàng)造力和執(zhí)行力如有神助?;赝麕状诬浖袠I(yè)的繁榮,根源都能夠找到引發(fā)技術爆炸的開源軟件。像前些年的瀏覽器大戰(zhàn),無論是360、QQ、獵豹、UC,瀏覽器內核都是一個叫chromium的開源瀏覽器內核。
對于比爾·蓋茨來說,2007年喜憂參半。喜的是當年的源代碼備案協(xié)議讓中國市場和微軟緊緊綁在一起,中國在2007年再次簽署新一輪協(xié)議獲取Windows Vista和Windows 7。也正是在同一年,比爾·蓋茨在北大演講時被闖入的學生舉起“Free Software,Open Source”海報抗議,差點提前12年上演“宏顏獲水”。
開源支持者闖入演講現(xiàn)場抗議
這一年也是開源社區(qū)開始爆發(fā)的一年,各類社區(qū)如雨后春筍般冒出來。
這一年,也是中國開源先鋒中科紅旗盛極而衰的一年。
紅旗Linux的困獸之斗
紅旗Linux到2007年走過了八年。八年回首,曾經一起前行的其他國產Linux廠商都黯然離場,藍點轉做嵌入式系統(tǒng)定制,聯(lián)想早就叫停了魔改Linux的幸福之家幸福Linux的研發(fā)。
軟件的最終目的是為了服務用戶,用戶使用軟件是為了解決問題。開源軟件似乎天生和商業(yè)公司不合,中科紅旗的業(yè)務越拓展,越感受到了與開源軟件本身的矛盾。
紅旗Linux系統(tǒng)
開源軟件的關鍵在于社區(qū)的支持,能夠有持續(xù)的生命力對軟件進行維護。從另一面說,用戶就必須接受一個簡陋的初始版本,達到可用狀態(tài)需要廠商的支持,廠商再將在支持過程中產生的新方法、特性反饋給社區(qū)實現(xiàn)軟件的迭代。
然而,當用戶需求與社區(qū)規(guī)劃背離,廠商就陷入了尷尬境地。中科紅旗投入了大量人力為用戶進行系統(tǒng)的定制開發(fā),卻沒有與社區(qū)的溝通機制,產品與開源本體走得越來越遠,陷入了閉門造車的困境:投入人力滿足用戶需求則與開源本體背離,無法利用開源社區(qū)節(jié)省工作量,則更需要加大人力投入,從而陷入惡性循環(huán)中。
中科紅旗作為廠商,沒有社區(qū)的話語權,在商業(yè)化下的用戶需求和開源軟件的社區(qū)發(fā)展之間反復拉扯,精力逐漸耗盡。開源社區(qū)的飛速發(fā)展,反而加速了中科紅旗人才和技術能力的流失。
隨著2014年中科紅旗倒閉,中國軟件人在開源軟件的第一次大規(guī)模系統(tǒng)性嘗試走向了尾聲,陷入了迷茫時代。很多企業(yè)對于開源的理解都走錯了路,把軟件開源當成簡單的 “混臉熟”。有些成為了“為了開源而開源”的工具人,跟在了西方開源軟件的屁股后面做代碼修理工。
沒有自研,就沒有開源
2010年前后是一個奇妙的原點,似乎每一個在今天有競爭力的行業(yè)都在那一年覺醒。中國大型軟件的迷茫時代在這一年結束,開拓時代就此展開。
當紅旗Linux在開源與生存間艱難摸索時,2009年阿里頂著各方質疑和壓力上馬阿里云,隨后2010年夏天在杭州正式開源第一行代碼,開始了轟轟烈烈的技術長征。
經歷了整整十年,如今阿里云已穩(wěn)居中國第一、全球前三;同時,阿里開源項目數(shù)超過1700個,覆蓋大數(shù)據(jù)、云原生、AI、數(shù)據(jù)庫、中間件、硬件等多個領域,多個開源項目成為行業(yè)事實標準,成為無數(shù)公司的技術底座。
沒有自研,就沒有開源。開源項目是一個個取之可用的水龍頭,自研技術就是保證水源持續(xù)供應的天然水庫。
如果你打開GitHub開源貢獻名單的排行榜,會看到排在前列的是微軟、谷歌、Red Hat這些頂級技術公司。除了二十多年來專注提供開源解決方案的Red Hat以外,其余皆用跨時代的技術創(chuàng)新開創(chuàng)了一個新時代:微軟打造“windows”為人類打開了一扇新的窗,谷歌創(chuàng)造了簡單的方框連接全球萬物信息。
而在排行榜之首的中國公司阿里,剛剛走過20周年,經歷了從商業(yè)驅動技術進步到技術創(chuàng)造新商業(yè)的蝶變,研發(fā)投入連續(xù)三年位列中國上市企業(yè)之首,積累了厚實的自研技術和開放的技術文化。
阿里自研技術,是被一點點逼出來的。
阿里的業(yè)務場景不僅復雜,業(yè)務轉型比大多數(shù)同行都要來得快,雙11更面臨世界絕無僅有的并發(fā)流量洪峰,無論是多年前的移動互聯(lián)網(wǎng)時代、興起的AI時代、還是已經到來的數(shù)字經濟時代,阿里始終走在技術無人區(qū),以前瞻性的戰(zhàn)略眼光和堅定的數(shù)十年投入開辟新的技術之巔。
回到2008年,當時天貓還叫淘寶商城,它和淘寶各自擁有一套IT系統(tǒng),商品庫和店鋪系統(tǒng)互不相通。做一個業(yè)務建一套系統(tǒng),這是傳統(tǒng)的企業(yè)IT模式。阿里巴巴最早體察到其中弊端,對內效率低下、成本高企,對用戶,毫無體驗可言。
業(yè)務端的嗅覺促使技術團隊啟動五彩石項目——拆除獨立的IT“煙囪”,打通兩個網(wǎng)站的業(yè)務和數(shù)據(jù)系統(tǒng),為前端提供公共模塊靈活調用。五彩石項目對阿里系統(tǒng)進行了分布式化的改造,首次在架構層面引入中間件。
當時業(yè)界都面臨相似問題,苦于沒有好的框架。阿里把內部中間件技術成果以開源形式開放出去,其中之一的代表就是高性能服務框架Dubbo。
現(xiàn)任負責項目的阿里高級技術專家北緯回憶到,“Dubbo一開源出去,除了互聯(lián)網(wǎng)的,做汽車的、做證券的、搞水泥、電器都成為我們用戶,甚至有公司愿意付錢,希望出現(xiàn)問題可以請團隊的開發(fā)人員幫忙?!?/p>
Apache Dubbo 改變了中國整整一代的IT架構。
此外,阿里為了管理雙11大量服務器之間的海量消息流轉,自主研發(fā)了高性能、低延遲的分布式消息隊列RocketMQ,很快將其引擎捐贈給社區(qū)成了Apache RocketMQ,現(xiàn)在是今日頭條、餓了么、網(wǎng)易、微眾銀行、滴滴、海爾、OPPO眾公司建設在線消息數(shù)據(jù)中臺的不二首選。
Apache Dubbo、Apache RocketMQ等是在阿里業(yè)務戰(zhàn)略升級中孵化出來的技術創(chuàng)新,也是阿里對開源重要的貢獻之一,但這不是全部。早在2017年,由阿里貢獻的OpenMessaging就成為首個由中國發(fā)起的分布式計算領域國際標準。
阿里也是最早對大數(shù)據(jù)進行系統(tǒng)性思考的中國企業(yè)之一。以五彩石項目為起點的技術長征,發(fā)端于2007年的一次戰(zhàn)略會議,高管們制定了雄心勃勃的“登月計劃”——打通經濟體的信息流、資金流和物流,靠技術去挖掘數(shù)據(jù)的價值,向技術要生產力。
如何才能最大化釋放數(shù)據(jù)的價值?阿里發(fā)現(xiàn)不但要數(shù)據(jù)規(guī)?;铌P鍵的是實時化。最早,阿里內部大規(guī)模使用開源工具Hadoop,很快發(fā)現(xiàn)無法支持業(yè)務需求。以2019年雙11為例,Apache Flink 突破了實時計算消息處理峰值25億條/秒的記錄。放眼望去,沒有一個開源數(shù)據(jù)引擎曾經面對這個級別的數(shù)據(jù)體量挑戰(zhàn)。
很快阿里從批量處理轉入到流處理,降維式大規(guī)模引入了Flink。通過三年雙11的大規(guī)模實戰(zhàn)檢驗,阿里在流計算和批處理上積累了大量新功能,實現(xiàn)性能快速提升,并把探索出來的成果第一時間反饋給Flink社區(qū),半年時間就向社區(qū)回饋了 120 萬代碼,F(xiàn)link技術架構不斷趨于成熟。
事實證明,實時化是數(shù)據(jù)處理真正的未來,通過用戶實時反饋、實時計算,從而瞬間決定產品內容的呈現(xiàn)形態(tài),具有神奇的魔力。如今,今日頭條、抖音、快手、B站、愛奇藝、斗魚直播、新浪微博等幾乎所有信息流產品,都在使用Apache Flink 建設新一代的大數(shù)據(jù)流處理平臺,也讓所有人真正迎來了大規(guī)模千人千面的個性化時代。
如今中國市值TOP20的互聯(lián)網(wǎng)公司基本都在采用Flink
阿里的前瞻性技術投入,再次得到了驗證。
OPPO最開始使用Spark,自18年嘗試使用Flink后,短短不到2年時間里,基本所有互聯(lián)網(wǎng)業(yè)務團隊都轉而擁抱Flink,服務全球上億用戶?!敖涍^云上大規(guī)模場景錘煉, Flink 不管是從架構設計還是技術迭代上看,都代表著當前最新的生產力?!監(jiān)PPO大數(shù)據(jù)平臺研發(fā)負責人張俊介紹道,現(xiàn)在大量數(shù)據(jù)報表、實時推薦、效果分析都依賴于Flink對于數(shù)據(jù)的加工處理,產品迭代速度有了飛躍性提升。
2019年冬天,張俊受邀北上參加Flink峰會,面向數(shù)千名大數(shù)據(jù)開發(fā)者分享,他有點激動?!耙郧昂芏嗳丝沼虚_源熱情,很難融入國際頂級開源社區(qū)。自從Apache社區(qū)出現(xiàn)越來越多阿里頂級項目后,我們才發(fā)現(xiàn)原來做一名PMC、Contributor,好像也不是很難?!?/p>
如今,阿里巴巴對于開源精神的追求已經不局限于軟件層面。平頭哥今年發(fā)布的玄鐵芯片平臺直接觸碰到了計算機底層的硬件平臺開源,利用RISC-V開源指令集嘗試將開源精神傳遞到傳統(tǒng)芯片領域。
從共享走向普惠,云和開源的殊途同歸
在我們享受中國科技飛躍發(fā)展的同時,無數(shù)人還在這場競爭的跑道上跌倒、爬起、沖刺,為掌握核心技術避免遭遇當年超級計算機外玻璃房子的屈辱。
阿里云逐漸從一家單純的云基礎設施提供商,變成云的智能化提供商:從大數(shù)據(jù)、AI、IoT到協(xié)同辦公,以及今后軟硬件一體化的云平臺,成為數(shù)字經濟時代的基礎設施。各行各業(yè)全面上云,前所未有的云上數(shù)字化轉型場景成為開源軟件最大的練兵場。
云生態(tài)的本體始于共享,與開源本身一脈相承;最終殊途同歸,走向普惠。阿里把兩者都做到了極致。
經歷20年探索,如今的阿里不僅把自研技術作為核心驅動力,更通過開源和云讓技術的飛輪轉動起來,為世界創(chuàng)造下一代的技術紅利。
一切,才剛剛開始。