云計算討論總是以“IPS”分類開始:基礎設施即服務(IaaS)、平臺即服務(PaaS)和軟件即服務(SaaS)。這種分類的好處是更易于理解,能夠合理的制定評估要求。
想要一個應用?單一用途應用(人力資源、財務、印刷等)可以找軟件即服務提供商。
想要編寫自己的應用?可以找基礎設施即服務提供商,他們能夠讓你創建你自己的定制應用。
在關注應用功能的同時,想要理解如何利用他人的軟件優勢進行管理這一概念?那么你可以看一下谷歌App Engine等應用,它們會讓你對PaaS有一個認識。
以上這種分類總是作為一種補充說明,原因是其缺乏強有力的代表產品,但是這一情況正在發生改變。
各領域內的云提供商開始關注未來的研發戰場——PaaS。他們已經清楚的認識到這是一個至關重要的市場——在這一市場中取勝將會擁有巨大的優勢。同時這一市場也對用戶帶來了一些重大挑戰。
這一證據就在我們身邊。迄今為止,亞馬遜是最成功的IaaS提供商。盡管亞馬遜沒有宣布他們的服務為“平臺”,但是他們一直在用額外的附加功能豐富其核心服務,這些功能對公司提供的的服務產生了深遠的影響,其能夠幫助更為迅速的創建應用、更為容易的管理資源收集。想一想用于管理和擴充數據庫的RDS、用于保護外部應用訪問的直接連接、用于在AWS數據中心中隔離應用的虛擬私有云、用于應用管理的CloudFormation。
在上周的Dreamforce大會上,Salesforce公司列出了他們的PaaS服務項目。這些項目均以他們近期收購的Heroku公司為基礎展開的。盡管這些項目曾經面向Ruby on Rails框架,但是Heroku已經開始擴展它們,讓它們支持Java。它們還與Salesforce的Database.com進行了整合。由于將本地數據與Salesforce應用進行了整合,其還得到了Database Rights Option的支持。Salesforce可能稱其為“社交企業”,但是整個服務項目很明顯是為了向應用研發提供一個通用平臺。
當然,不僅僅是大公司瞄準了這一市場。許多近期新成立的小公司也正在為創建云應用提供略有不同的架構。盡管這些公司宣稱他們將采用開源和多云模式,但是人們仍然會繼續關注他們的傳輸情況。在我看來,云提供商將適應每一種平臺,以防止影響應用的可移植性。
這一作法的影響是簡單的IPS分類將被迅速打破并被細分為復雜的云計算世界。在這個世界里,每個提供商都會尋求一種能夠涵蓋大部分客戶計算需求的解決方案。你的SaaS提供商希望幫助你編寫自己的應用。你的IaaS提供商希望其基礎設施擁有更多的功能,以使你的研發人員更具多產性。在這種新的云計算聯合世界中,要想徹底搞清楚提供商推出的產品將更為困難,這種模棱兩可的情況無疑將對企業帶來挑戰。
PaaS帶來的挑戰
為什么會說PaaS對用戶來說是一個重大挑戰呢?簡單的說是因為這種平臺的實力和生產能力為企業帶來了新的問題。企業可能直到部署了大量應用之后才意識到這些問題。
在IT主管評估他們的PaaS選項時應當考慮一下以下這些問題:
1、鎖定。PaaS架構與CSP架構整合的難度遠遠超過了向一個提供商的虛擬機里安裝應用。如果一個應用在內部依賴于服務提供商的服務,那么提取這個應用需要從最根本的地方檢查代碼,而不僅僅是簡單的在另一個提供商那里安裝一個打包工具。你從PaaS提供商那里獲得的生產效率值與特定服務項目對你的鎖定程度是匹配的。我并不認為鎖定純粹是負面的。以我的體驗看,公司愿意被鎖定是因為它們能夠提供更多的好處。在選擇PaaS時明白這一點非常重要,因為PaaS無疑會導致更大程度的鎖定。
2、復雜性。每一個PaaS提供商都會將他們的功能與他們的架構整合在一起,而這些架構都是根據提供商對應用應該如何設計的理解創建的。確定在PaaS環境中如何以最佳方式編寫和運行你的應用并不重要。當然,這是與傳統的本地環境最大的區別。
3、CSP(云服務提供商)差異。正如上面所提到的,大量PaaS架構宣稱提供了一個抽象層,該層從應用研發人員那里隱藏了云提供商的細節。將應用抽象概念實際正在工作的可能性被放置在一旁的作法忽略了元應用軟件功能,這些功能可以將用戶進行鎖定在任何項目中。大部分這類功能由將CSP提供,其重點用于運行,而不是應用編輯。CSP通過這種功能水平讓他們自己與其他提供商區別開來,他們會在運行層面將你鎖定起來,而不再是在代碼層面。不要認為這種情況不會發生。云提供商的第一個想法就是“我如何要讓自己與其他的提供商不同?”因為他們都害怕成為計算能力相似的“啞管道”。
4、新技能。你的應用研發人員需要學習新的框架知識,知道如何為其研發應用。盡管早期的云部署公司都擁有大量能夠快速學習新技能的熟練研發人員,但是對于其他公司來說,讓公司能夠快速掌握新技能是一項人力資本挑戰。
5、以新架構為導向指導當前實踐。大多數公司都已經明確了架構、方法和操作實踐的定義。這些必須根據新架構進行評估并被修訂。實際上,這一問題已經在IaaS云服務中存在了。隨著新架構帶來的指導點越來越多,情況將會進一步惡化。
以上這些問題可能會被人視為拒絕云計算的理由。事實上并非如此。實際上,每個新平臺都會存在一些重大問題,無論是微型計算機、個人電腦、云計算還是筆記本電腦。重要的是要認識到每個新平臺存在的利弊,做好面對它們的準備。記住以前發生教訓和經驗也很重要。正如美國作家喬治·桑塔亞那的那句名言,“那些忘記過去的人注定要重蹈覆轍” 。