Facebook成最大開源公司 但缺乏持續支持業務


Facebook成最大開源公司 但缺乏持續支持業務


6月23日消息,不用再質疑了:Facebook儼然已成為全世界最大的開源公司。之前,Facebook已經通過數據中心、數據庫和各種開源設計引領了一股風潮。本周,該公司又推出了兩大開源項目:Wedge網絡交換機及其采用的FBOSS操作系統。這使得Facebook站上了開源之巔。

但這是否也敲響了開源公司的喪鐘?畢竟,隨著Facebook、谷歌、LinkedIn等公司相繼推出大量的開源代碼,其他專門銷售開源軟件的公司還有生存空間嗎?

透視新軟件工廠

開源倡導者埃裡克•雷蒙德(Erid Raymond)曾在2001年出版的《大教堂與市集》( The Cathedral And The Bazaar)一書中指出,多數軟件都是拿來用的,而不是拿來賣的。然而,我們的多數注意力都集中在軟件廠商身上,因為我們都在關注甲骨文與IBM,或者SAP與微軟等廠商之間的爭奪。

紅帽開源事務總裁邁克爾•蒂曼(Michael Tiemann)曾在2009年指出,盡管這些都是十億美元級別的軟件公司,但開源社區貢獻的軟件,以及企業內部開發的軟件,價值卻高達數萬億美元。

盡管幾乎所有軟件都受到了短視的專有授權的限制,但這種趨勢卻開始改變。Facebook等網絡巨頭都已經意識到開放代碼的巨大價值。一流的開發者希望使用一流的代碼,而越來越多的一流代碼都采用了開源模式。

所以,盡管Netflix從表面上看是一家流媒體視頻公司,但它卻定期在總部舉辦開源技術活動,通過開放源代碼來吸引開發者。盡管如此,Netflix還是在本周宣布,該公司將撤下公共API(應用編程接口)項目。

這一切都值得稱贊,畢竟,開源越多越好。但在這類企業開發和發布的所有開源軟件中,卻沒有多少能夠獲得有效的支持,導致其遲遲未能在主流企業用戶中普及。

缺乏持續支持

Apache Cassandra項目就是很好的例子,Facebook開發該項目後於2008年開放了它的源代碼,以支持其消息系統。兩年後,Facebook繼續推進。隨著該公司不斷改進消息系統,他們已經從Cassandra轉換到Hbase:

“2008年,我們開放了Cassandra的源代碼,這是一套最終一致性鍵值存儲方案,已經用於為Inbox Search提供流量服務。我們的運營和數據庫團隊在管理和運營MySQL方面擁有豐富的知識,所以放棄其中任何一項技術都需要慎重考慮。我們要麼放棄Cassandra的投資,要麼為我們的運營團隊提供培訓,以支持新的大型系統。”

“我們花了幾周時間設計了一套測試框架,以評估MySQL、Apache Cassandra、Apache HBase和另外兩套系統。我們最終選擇了HBase。最終證明,MySQL也無法很好地處理長尾數據;隨著索引和數據集的擴大,性能會下降。我們發現,Cassandra的最終一致性模式將難以與我們最新的Messages基礎架構協調一致。”

換句話說,Facebook不會僅僅因為某項技術是它自己開發的,就堅定使用該技術。正如Facebook前工程師史蒂文•格裡姆(Steven Grimm)所說:“Facebook在使用何種工具這個問題上很務實。Cassandra雖然是我們自主開發的,但在我們為網站的新功能選擇數據存儲方式時,這並不會為它帶來太大幫助。只不過,在我們制定可維護性等其他問題的決策時,會考慮自主開發這一因素。”

這對Facebook而言是件好事,但對Netflix和思科等已經使用Cassandra技術的企業來說,卻未必是好事。對主流企業尤其如此,他們所渴求的穩定性是Facebook無法給予的,因為Facebook並不提供開源軟件支持業務。

開源公司需求仍在

正因如此,“開源公司”時代才剛剛開始,遠未結束。Facebook及其同行每發布一個開源項目,都必須有相應的企業提供持續的維護和代碼支持。

盡管“每家公司都必須是軟件公司”的說法有些老生常談,但實際上,多數公司都遠未達到這個目標。即使是那些以軟件開發為核心競爭力的公司,也未必有足夠的精力來維護他們使用的每一個開源項目。有鑒於此,除了編寫開源軟件的公司外,肯定還需要一些專門為此提供支持的企業。

Cassandra就是一個很好的例子:DataStax已經為其提供了商業支持,並在持續開發這套代碼,而且由Apache軟件基金會負責托管。但類似的例子還有很多。例如Hadoop最初由雅虎開發,目前獲得了Hortonworks和Cloudera等組織的支持。Lucene最初由雅虎的道格•卡汀(Doug Cutting)開發,現在由Elasticsearch和Lucidworks等提供支持。

我們進入了開源軟件的黃金時代。計算領域最有吸引力、最重大的趨勢都是由開源軟件推動的,無論是智能手機操作系統,還是企業領域的雲計算基礎設施,抑或當今越發熱門的大數據技術,都概莫能外。盡管很多開源軟件都不是軟件公司開發的,但支持服務還是要由軟件公司來提供。

來源:techweb

要得知最新科技消息,請留意派亞普科技創見!