暢談虛擬化和云計算平臺
VMWare收購SpringSource一案引起了世人的極大關注。 SpringSource是眾多當今最為普及、發展最迅速的開源社區、應用架構、應用程序和管理工具背后的創新和驅動力量。收購SpringSource 的舉措意味著,VMWare將成為在應用層領域也有很深造詣的虛擬化供應商。這件事不可避免引起人們深思:在抽象的云計算平臺和虛擬機大行其道的今天,應用開發前途何在?
對于收購SpringSource,VMware公司總裁兼首席執行官Paul Maritz表示:“虛擬化和云計算平臺的發展,促使現代計算環境開始全面轉向以應用和數據為中心,以虛擬化和云計算平臺為支撐。虛擬化、現代應用架構和云計算正在成為當今軟件市場的核心力量。SpringSource和VMware意識到了這種轉變,我們的聯合將使我們置身于目前軟件市場最重要力量的交叉點上。”
但是,也有專業人士對此核心力量的論斷持相當悲觀的態度。不久前,ServerSide網站編輯Peter Varhol發表《Application Development is Dead》(應用開發已死)一文,闡述了其云計算的優勢為什么會對傳統的應用開發造成致命傷害的觀點。
Peter Varhol在ServerSide和TechTarget從事多年編輯工作,在博客中,他表示:“我在宣布應用開發的生命已經結束的時候,真的是心情非常復雜。”
是誰扼殺了應用開發?是云計算,它是兇手!
現在的情況大家都知道,虛無飄渺的數據中心已經把開發平臺捧上了天。那么 Peter Varhol為什么會突然說出如上這番話來呢?畢竟廣大的開發人員還在努力地編寫調試代碼、編譯、設計、建立函數呢。確實,雖然已有部分人員已經在進行云端的部署工作,但是云計算的影響還沒到達這么遠。但是Peter Varhol大膽預言:“這將只是時間問題。”以下為Peter Varhol觀點原文。
首先請允許我介紹一下自己的職業生涯。我曾做過DOS、VM/MVS、MacOS(舊式)和各種Windows的開發工作,也做過Unix甚至VMS上的相關工作。
我會使用各種不同的語言(很久很久以前我還用過C甚至Pascal),包括學習應用與操作系統相應的API。從某種程度上說,我至少可以根據經驗選擇目標操作系統,并根據系統選擇 API。畢竟這也是Unix吸引人的地方之一。
但是我們喜歡抽象,而且有無數種方式實現這一點。比如現在的Java,我們可以根據應用和目標選擇幾百種不同的框架。也就是我們知道問題的領域,知道我們的長處,從而為每個工作安排最佳的工具。我們用不同的方式展現應用,而且我們的選擇通常都是出色的。這種才智正是設計師和開發人員所必須擁有的。
但是,現在的開發已經沒有太多選擇余地。確實,現在還有許許多多的語言、框架、代碼組件,但是最佳“選擇”卻已由幾位IT巨頭代我們做出。微軟說,我們進行云部署時應該使用Azure。因此,如果你是一家以微軟技術為基礎的工作室,你就應該向著這個方向努力。由于云計算越來越符合經濟學的發展,這種“選擇 ”就會變成強制性的決定。沒有人會問你是否精通C,他們只會問你是否懂得Azure。
要想成為一名有經驗而且成功的開發人員,你要學會自己做出選擇。即使這一選擇并不是最好的,但是我們也可以從中吸取經驗并提高技能。
你可能會說,即使是云計算也還是有足夠多的選擇吧。比如,Amazon的EC2 只提供按需購買的功能,我可以自己決定如何進行最佳利用、使用哪種語言和框架。好吧,你說得確實沒錯。但是我以產品經理的身份告訴你,Amazon肯定正在考慮構建他們自己的集成應用。然后,你就得跟著他們走。這并不是什么內幕消息。由于云計算供應商的推動作用,構建集成應用的趨勢是不會改變的。
但僅此怎么能說扼殺了應用開發呢?畢竟我們還在寫著代碼。他們只是扼殺了使用其它組件和架構進行創新的能力罷了。一定有人提出這樣的異議。
我們必須進行云端部署嗎?即使答案是肯定的,我們又必須使用云計算供應商的技術嗎?我認為,很快,而不是或早或晚,私有數據中心就會被歷史所拋棄。當然,有一些理由,比如為了安全或集成,讓某些應用始終處于“云”之外,但是這種理由會越來越少。
應該說應用開發正在利用虛擬機上的集成技術實現自己的統一。我們的創造性正在丟失;因為IT精英們希望實現統一的部署。而且,他們必然會獲勝,即使他們需要強迫著把開發人員趕到“云”上。
不過,好消息是“善有善報,惡有惡報”。幾年以后,當我們幾乎要被Google、Vmware和微軟等統一的集成技術扼殺之時,反抗自然又會出現,從而再次創造出新的語言和框架群體。然后,混沌再次降臨。
【編輯推薦】