PaaS 一個有趣的例子是 Google App Engine。App Engine 是一個服務(wù),通過它可以在 Google的可伸縮性極佳的架構(gòu)上部署 Web 應(yīng)用程序。App Engine 為可通過 Internet 引用的 Python應(yīng)用程序提供一個沙盒(將來還會支持更多的語言)。除了支持用戶認證、鏡像操作和電子郵件發(fā)送外,App Engine 還提供了 PythonAPI,用于持久地存儲和管理數(shù)據(jù)(使用 Google Query Language 或 GQL)。Web應(yīng)用程序運行時所在的沙盒將限制對底層操作系統(tǒng)的訪問。雖然 App Engine 限制了應(yīng)用程序可用的功能,但是它支持有用的 Web服務(wù)的構(gòu)造。請參閱 參考資料 小節(jié),了解更多信息。
注意: 在一定的帶寬和存儲約束范圍內(nèi),在 App Engine 中部署應(yīng)用程序是免費的。但是,如果要用 App Engine 構(gòu)建生產(chǎn) Web 站點,則需要評估使用費。
PaaS 的另一個例子是 10gen,它既是一個云平臺,又是一個可下載的開放源代碼包,可用于創(chuàng)建您自己的私有云。10gen 是類似于App Engine 的一個軟件棧,它提供與 App Engine 類似的功能 — 但有一些不同之處。通過 10gen,可以使用 Python以及 JavaScript. 和 Ruby編程語言開發(fā)應(yīng)用程序。該平臺還使用沙盒概念隔離應(yīng)用程序,并且使用它們自己的應(yīng)用服務(wù)器的許多計算機(當(dāng)然,是在 Linux上構(gòu)建)提供一個可靠的環(huán)境。 Infrastructure-as-a-Service
IaaS 是以服務(wù)的形式交付計算機基礎(chǔ)設(shè)施。這一層與 PaaS 的不同之處在于,只提供虛擬硬件,而沒有軟件棧。客戶提供一個 VM鏡像,該鏡像在一個或多個虛擬服務(wù)器上被調(diào)用。IaaS 是作為服務(wù)的計算的最原始的形式(除了對物理基礎(chǔ)設(shè)施的訪問)。最著名的商業(yè) IaaS提供程序是 Amazon Elastic Compute Cloud(EC2)。在 EC2 中,可以指定一個特定的VM(操作系統(tǒng)和應(yīng)用程序集),然后將應(yīng)用程序部署到它上面,或者提供要在服務(wù)器上執(zhí)行的 VM 鏡像。然后,只需根據(jù)計算時間、存儲和網(wǎng)絡(luò)帶寬付費。
Eucalyptus 項目(Elastic Utility Computing Architecturefor Linking Your Programs To Useful Systems)是 Amazon EC2的一個開源實現(xiàn),它與商業(yè)服務(wù)接口兼容。和 EC2 一樣,Eucalyptus 依賴于 Linux 和 Xen進行操作系統(tǒng)虛擬化。Eucalyptus 是加利福尼亞大學(xué)(SantaBarbara)為進行云計算研究而開發(fā)的。您可以從該大學(xué)的網(wǎng)站上下載它(見 參考資料),或者通過 Eucalyptus PublicCloud 體驗它,不過后者有一些限制。
另一個 EC2 風(fēng)格的 IaaS 是 Enomalism 云計算平臺。Enomalism 是一個開放源代碼項目,它提供了一個功能類似于 EC2 的云計算框架。Enomalism 基于 Linux,同時支持 Xen 和 Kernel Virtual Machine(KVM)。與其他純 IaaS 解決方案不同的是,Enomalism 提供了一個基于 TurboGears Web 應(yīng)用程序框架和 Python 的軟件棧。
微信關(guān)注公眾號“cncompute_com ”,為您奉上最新最熱的計算頭條資訊,干貨滿滿。