开源与云计算
本文講的是開源與云計(jì)算,【IT168 資訊】幾年來我一直擔(dān)心開源運(yùn)動(dòng)可能會(huì)遭受Kim Stanley Robinson在“Green Mars”中精辟論述的問題:“歷史的浪潮比我們做得還要快。”創(chuàng)新者被拋在后面,他們?cè)?jīng)改變的世界拿著他們的主意向著意想不到的方向跑了。
在“開源模式的轉(zhuǎn)變”和“什么是Web 2.0” 這些文章中我認(rèn)為Internet作為一個(gè)非私有平臺(tái)主要構(gòu)建在開源軟件之上,它的成功有可能會(huì)導(dǎo)致在云計(jì)算領(lǐng)域一種新的封鎖。自由和開源許可都是基于軟 件分發(fā)方式,當(dāng)軟件不再需要分發(fā)而只在網(wǎng)絡(luò)平臺(tái)上運(yùn)行時(shí)自由和開源許可證意義何在?當(dāng)在線企業(yè)形成競爭優(yōu)勢(shì)后我們又如何保護(hù)創(chuàng)新的自由?這些企業(yè)通過用戶 創(chuàng)造的巨型數(shù)據(jù)庫形成自己的競爭優(yōu)勢(shì),用戶用得越多這種優(yōu)勢(shì)越強(qiáng),從而對(duì)后來者形成不可逾越的門檻。
在過去幾年里針對(duì)Web 2.0和云計(jì)算的開源活動(dòng)正在激增,我已經(jīng)清楚地看到開源概念在網(wǎng)路時(shí)代重組的跡象。比如這次會(huì)議上像“超越REST?通過XMPP PubSub構(gòu)建數(shù)據(jù)服務(wù)”、“BigData云計(jì)算”、“Hypertable:開源、高性能可擴(kuò)展數(shù)據(jù)庫”、“支持Open Web”以及“用Hadoop和EC2處理大數(shù)據(jù)”這樣的分會(huì)場場爆滿。(由于波特蘭會(huì)議中心的防火要求,很多會(huì)議沒能讓所有感興趣的人都參加。Brian Aker關(guān)于Drizzle的演講非常受歡迎以至他不得不講了三次!)
僅僅“關(guān)注”云計(jì)算不是關(guān)鍵。關(guān)鍵是要再一次找到在新的形勢(shì)下如何使開源繼續(xù)發(fā)展。很重要的是認(rèn)清開源的成功有幾個(gè)關(guān)鍵元素:
1.許可證要允許和鼓勵(lì)再發(fā)布、修改乃至發(fā)展分支;
2.一個(gè)體系結(jié)構(gòu)要使程序能被作為組件在任何可能的地方重用,以及可以被擴(kuò)展,而不是被替換來提供新功能;
3.低門檻,讓新用戶輕松上手一試。
4.低門檻,讓開發(fā)人員構(gòu)建新的應(yīng)用與大家分享。
這些還遠(yuǎn)不全面,但可以讓我們來思索。如上所述我不認(rèn)為我們已經(jīng)找到某種許可證能允許分支發(fā)展Web 2.0和云應(yīng)用,尤其是這些應(yīng)用形成的封鎖是數(shù)據(jù)帶來的,而不是沒有開放代碼。然而,已經(jīng)可以看到跡象,(像Yahoo! Boss)企業(yè)已經(jīng)開始理解在云計(jì)算時(shí)代沒有開放數(shù)據(jù)的開源僅僅是一半開源。
但是開放數(shù)據(jù)從根本上被云計(jì)算中的效能計(jì)算想法所挑戰(zhàn)。Jesse Vincent——他搞出一些史上最好的駭客T恤(還有RT)一語道破:“Web 2.0就是數(shù)字化的佃農(nóng)租種地主的土地。”(我查了一下發(fā)現(xiàn)似乎是Nick Carr在2006年發(fā)明了這個(gè)說法!)如果這對(duì)于Web 2.0成功企業(yè)是事實(shí)的話那對(duì)于作為基礎(chǔ)結(jié)構(gòu)的云計(jì)算就更是事實(shí)了。我還記得Microsoft Windows Live副總裁Debra Chrapaty的話“未來在某人的平臺(tái)上作為開發(fā)者就意味著你根植于這個(gè)基礎(chǔ)結(jié)構(gòu)?!奔~約時(shí)報(bào)把帶寬提供企業(yè)稱為OPEC 2.0。云計(jì)算平臺(tái)上多大程度會(huì)是如此?
這就是為什么我更認(rèn)同通過點(diǎn)對(duì)點(diǎn)途徑分發(fā)internet應(yīng)用。Jesse Vincent在這次開源大會(huì)上的講話“Prophet:走出云計(jì)算之路”描述了一個(gè)聯(lián)合同步系統(tǒng);Evan Prodromou的“開源微博客”介紹了identi.ca,這是一個(gè)聯(lián)合的、開源的生活流應(yīng)用方案。
我們可以對(duì)開放數(shù)據(jù)和開放服務(wù)暢所欲言,但坦率地講更為重要的是要認(rèn)識(shí)到有多少可能的事是被大家使用的系統(tǒng)體系結(jié)構(gòu)把持著??梢韵胍幌?#xff0c;比如為什么 PC只能帶動(dòng)一個(gè)二進(jìn)制免費(fèi)軟件的產(chǎn)業(yè),而Unix卻可以產(chǎn)生一個(gè)開源軟件的生態(tài)環(huán)境?這不僅僅是意識(shí)形態(tài)的問題;Unix分散的硬件體系結(jié)構(gòu)需要源代碼 以便用戶在自己機(jī)器上編譯應(yīng)用程序。為什么WWW上產(chǎn)生了那么多獨(dú)立信息提供者而像AOL和MSN這樣的集中網(wǎng)站卻步履蹣跚?
請(qǐng)注意:所有作為服務(wù)的平臺(tái)(從Amazon的S3和EC2、Google的AppEngine到Salesforce的force.com,更不 要說Facebook的社交網(wǎng)絡(luò)平臺(tái)了)與AOL有更多的相似之處,而不是過去十五年我大家所知道的internet服務(wù)。我們將用十年時(shí)間回到集中的模 式去?可互操作的internet應(yīng)該是一個(gè)平臺(tái)而不是哪一個(gè)廠商的私人禁區(qū)。(Neil McAllister描述了多數(shù)平臺(tái)作為服務(wù)合約是多么片面。)
所以我給出我的第一個(gè)建議:如果你關(guān)心云計(jì)算的開源,請(qǐng)?jiān)谀切┰O(shè)計(jì)為聯(lián)合而不是集中控制的服務(wù)上構(gòu)建項(xiàng)目。體系結(jié)構(gòu)從來都是戰(zhàn)勝許可證的。
但是點(diǎn)對(duì)點(diǎn)體系結(jié)構(gòu)并不像開放標(biāo)準(zhǔn)和協(xié)議那樣重要。如果服務(wù)要求互操作,競爭就會(huì)被保護(hù)下來。無論微軟和Nescape在當(dāng)年的瀏覽器大戰(zhàn)中如何想去控制Web,均以失敗告終,因?yàn)锳pache堅(jiān)持開放標(biāo)準(zhǔn)。這就是為什么說上周開源大會(huì)上成立的Open Web Foundation有重要的意義。我們要保證的不僅僅是Web上開源的軟件,還有開放的標(biāo)準(zhǔn),它能確保搶占了統(tǒng)治地位的廠商不見利忘義。
我期望未來幾年里發(fā)展的“internet操作系統(tǒng)”將要求開發(fā)人員不要再將應(yīng)用看作終點(diǎn),而是要將應(yīng)用作為組件。比如為什么每個(gè)應(yīng)用都要?jiǎng)?chuàng)造自己的社交網(wǎng)絡(luò)?社交網(wǎng)絡(luò)難道不應(yīng)該是個(gè)系統(tǒng)服務(wù)嗎?
這不是“道義”上的呼吁,是戰(zhàn)略建議。任何領(lǐng)域中第一個(gè)提供構(gòu)建適當(dāng)?shù)亻_放、可重用的系統(tǒng)服務(wù)的廠商將快速發(fā)展。目前有很多重點(diǎn)放在低層平臺(tái)子系統(tǒng)上,像 存儲(chǔ)和計(jì)算,但是我一直相信這樣一個(gè)發(fā)展的操作系統(tǒng)中很多關(guān)鍵的子系統(tǒng)是數(shù)據(jù)子系統(tǒng),比如身份信息、位置信息、支付、產(chǎn)品目錄、音樂,等等。而且最終這些 子系統(tǒng)將要適當(dāng)?shù)亻_放和可以互操作,從而開發(fā)人員可以直接構(gòu)建數(shù)據(jù)密集型應(yīng)用,而無需自己去組織應(yīng)用需要的所有數(shù)據(jù)。John Musser稱其為可編程Web。
請(qǐng)注意我說的是“適當(dāng)?shù)亻_放”。Google Maps肯定不是開源的,但是它已經(jīng)足夠開放了(和此前任何Web地圖服務(wù)比較)以至于成為整整一代新應(yīng)用的關(guān)鍵組件,這些應(yīng)用不再需要自己的地圖信息。 programmableweb.com上的一個(gè)總結(jié)顯示Google Maps支持了差不多90%的地圖mashup。Google Maps是私有的,但是是可重用的。判斷一個(gè)API是否開放一個(gè)關(guān)鍵原則是看它是否支持那些不是建立在該API之上的服務(wù),而且是否可以在Web上分發(fā)。Facebook的API支持Facebook上的應(yīng)用;Google Maps才是真正的可編程Web子系統(tǒng)。
所以,即使云計(jì)算平臺(tái)本身是私有的,它上面運(yùn)行的軟件可以不是。Rightscale的Thorsten von Eicken在他的講話“擴(kuò)展到云計(jì)算”中指出,幾乎所有云計(jì)算平臺(tái)上的軟件都是開源的,一個(gè)簡單的原因是私有軟件許可證沒有支持云計(jì)算部署方式。盡管開源協(xié)議不能防止云計(jì)算提供者的封鎖,但至少允許開發(fā)人員在云計(jì)算中部署軟件。
談到這里有一點(diǎn)是重要的,承認(rèn)即使是私有云計(jì)算平臺(tái)也提供了開源的一個(gè)關(guān)鍵益處:降低了進(jìn)入的門檻。Derek Gottfried的講話”用Hadoop和EC2來處理大數(shù)據(jù)“很好地展示了這一點(diǎn)。Derek描述了他如何用一張信用卡、權(quán)限以及駭客技巧就可以將紐約時(shí)報(bào)過刊在線檔案放到網(wǎng)上讓大家免費(fèi)訪問。開源是要鼓勵(lì)創(chuàng)新和重用,Web 2.0和云計(jì)算也可以服務(wù)同樣的目標(biāo)。
開源的另一個(gè)好處——買之前先試試,病毒式營銷——對(duì)于云計(jì)算提供廠商也是可能的。在一次風(fēng)險(xiǎn)投資中我問那個(gè)公司如何避免高昂的銷售成本(尤其是企業(yè)軟 件)。開源通過構(gòu)建免費(fèi)用戶組成的管道來解決這個(gè)問題,公司接下來可以向其銷售后續(xù)的服務(wù)。云計(jì)算的答案不是那么好但畢竟有答案:一些應(yīng)用一定數(shù)量的實(shí)例 是免費(fèi)的,再多的實(shí)例則要收費(fèi)。這種商業(yè)模式失掉了一些病毒式營銷,將成本從終端用戶傳到應(yīng)用提供商,但它有一個(gè)開源沒有的好處,它提供了更有力的付費(fèi)服 務(wù)升級(jí)渠道。只有時(shí)間能證明開源或云計(jì)算誰是更好的分發(fā)方式,但是很清楚的一點(diǎn)是二者在這方面都比傳統(tǒng)的私有軟件進(jìn)步許多。
總結(jié)一下,在我們得到所有答案之前還有很長的路要走,但正在前進(jìn)。不管那些我們看到的Web 2.0和云計(jì)算中封鎖的可能性,我相信開放和互操作的益處將最終成為主流,我們將看到一個(gè)由合作的程序組成的系統(tǒng),它們不屬于同一公司,一個(gè) internet操作系統(tǒng)就像是在PC體系結(jié)構(gòu)上的Linux,由無數(shù)軟件組成。那些對(duì)internet操作系統(tǒng)持懷疑態(tài)度的人稱我們正在失去一個(gè)真正操 作系統(tǒng)的控制層次。我提醒他們今天Linux中很多軟件在Linus寫了內(nèi)核之前就存在。正如“72個(gè)城鎮(zhèn)組成了洛杉磯”,今天的Web是一個(gè)操作系統(tǒng)內(nèi)核的72個(gè)子系統(tǒng)。當(dāng)我們最終找到了內(nèi)核最好是開源。
原文發(fā)布時(shí)間為:2009-06-17
本文作者:IT168.com
本文來自云棲社區(qū)合作伙伴IT168,了解相關(guān)信息可以關(guān)注IT168。
原文標(biāo)題:開源與云計(jì)算
總結(jié)
- 上一篇: 云计算时代企业内部IT人员的新定位
- 下一篇: 美国安全厂商在云安全上的最新进展