七大國內外主流雲計算開發平臺

隨着大衆對雲計算日益增加的需求,不少公司也創建了雲計算開發平臺,從多種角度、多形式的進行雲技術的開發。這是開發者打造雲戰略的一個舞臺,他們提供了雲的部署及管理應用所需的基於雲的開發和應用縮放或者是基礎設施的管理,或是提供一個開源軟件和硬件向結合的應用程序開發平臺。前端

各類雲平臺(cloud platforms)的出現無疑是轉變雲計算技術的重要環節之一。顧名思義,這種平臺容許開發者們或是將寫好的程序放在「雲」裏運行,或是使用「雲」裏提供的服務,或兩者皆是。至於這種平臺的名稱,如今咱們能夠聽到不止一種稱呼,好比平臺即服務(platform as a service,PaaS)。像PaaS這種支持應用的方式有着巨大的潛力,本文盤點了國內外主流公司的雲計算PaaS技術,以提供參考。mysql

微軟Windows Azureweb

Windows Azure是專爲在微軟建設的數據中心管理全部服務器,網絡以及存儲資源所開發的一種特殊版本Windows Server操做系統,它具備針對數據中心架構的自我管理(autonomous)機能,能夠自動監控劃分在數據中心數個不一樣的分區(微軟將這些分區稱爲Fault Domain)的全部服務器與存儲資源,自動更新補丁,自動運行虛擬機部署與鏡像備份(Snapshot Backup)等能力,Windows Azure被安裝在數據中心的全部服務器中,而且定時和中控軟件:Windows Azure Fabric Controller進行溝通,接收指令以及回傳運行狀態數據等等,系統管理人員只要經過Windows Azure Fabric Controller就可以掌握全部服務器的運行狀態,Fabric Controller自己是融合了不少微軟系統管理技術的總成,包含對虛擬機的管理(System Center Virtual Machine Manager),對做業環境的管理(System Center Operation Manager),以及對軟件部署的管理(System Center Configuration Manager)等,在Fabric Controller中被髮揮得淋漓盡致,如此纔可以達成經過Fabric Controller來管理在數據中心中全部服務器的能力。sql

Windows Azure環境除了各式不一樣的虛擬機外,它也爲應用程序打造了分散式的巨量存儲環境(Distributed Mass Storage),也就是Windows Azure Storage Services,應用程序能夠根據不一樣的存儲需求來選擇要使用哪種或哪幾種存儲的方式,以保存應用程序的數據,而微軟也儘量的提供應用程序的兼容性工具或接口,以下降應用程序移轉到Windows Azure上的負擔。數據庫

Windows Azure服務平臺如今已經包含以下功能:網站、虛擬機、雲服務、移動應用服務、大數據支持以及媒體功能的支持。編程

編輯總結:Azure服務平臺的設計目標是用來幫開發者更容易地建立web和互聯設備的應用程序。它提供了最大限度的靈活性、選擇和使用現有技術鏈接用戶和客戶的控制。其優勢是:利於開發者過渡到雲計算;可快速得到結果;想象並建立新的用戶體驗;基於標準的兼容性。後端

Cloud Foundry瀏覽器

Cloud Foundry是由相對獨立的多個模塊構成的分佈式系統,每一個模塊單獨存在和運行,各模塊之間經過消息機制進行通訊。Cloud Foundry各模塊自己是基於Ruby語言開發的,每一個部分能夠認爲拿來便可運行,不存在編譯等過程。緩存

Cloud Foundry雲平臺是徹底模塊化的分佈式系統,各個模塊之間是相互獨立的,經過消息總線進行相互鏈接和通訊,這種結構不只使系統各模塊之間的耦合度下降,並且使系統功能容易擴充。此外,開發人員能夠經過VMC命令行工具或STS插件方便的部署應用程序到Cloud Foundry雲平臺上,最終用戶能夠經過瀏覽器訪問運行在Cloud Foundry雲平臺上的應用。全部的訪問請求都經過Router進行轉發,分別由雲控制器Cloud Controller和應用運行代理DEA模塊進行請求響應,應用生命週期管理Health Manager模塊負責監控和管理整個應用在雲平臺上的正常運行,雲平臺的各類應用服務由Services模塊提供,能夠靈活擴展。安全

Cloud Foundry雲平臺主要有Router、Cloud Controller、Health Manager、DEA、NFS、NATS、Cloud Controller Database以及Service等模塊組成。這些模塊協同合做,經過特定的消息傳輸機制和API接口進行通訊,就可使整個雲平臺正常運行。因爲在集羣環境下每一個模塊都有多個部署節點,從而保證了雲平臺的可靠性和彈性動態擴展的需求,使得應用程序能夠穩定可靠的運行在Cloud Foundry雲平臺上。

編輯總結:Cloud Foundry爲開發者構建了具備足夠選擇性的PaaS雲平臺,它同時支持多種開發框架、編程語言、應用服務以及多種雲部署環境的靈活選擇。其優勢是:支持各類框架的靈活選擇;增長了在PaaS平臺上部署應用的靈活性;能夠靈活的部署多種雲環境中。

Red Hat OpenShift

紅帽OpenShift經過爲開發人員提供在語言、框架和雲上的更多的選擇,使開發人員能夠構建、測試、運行和管理他們的應用,從而從新定義了 PaaS市場。以紅帽全面的JBoss專業知識爲基礎,OpenShift憑藉創新的特性(包括CDI)領導PaaS市場,並支持Java EE 6,從而將PaaS的能力擴展到更豐富和更苛刻的應用。創建在紅帽開源領導地位基礎上的OpenShift旨在終結PaaS的廠商鎖定,使用戶能夠選擇自 己應用運行在哪一個雲提供商的雲中。OpenShift將做爲在線服務來提供。

OpenShift獨一無二的優點是它爲PaaS帶來行業領先的紅帽和JBoss的生態環境,使開發人員能夠利用業界最普遍的中間件服務。例如,OpenShift支持MongoDB和其它得到紅帽企業 Linux認證的服務。因爲支持普遍的框架和語言,包括Java、PHP、Python和Ruby,紅帽OpenShift爲雲計算的開發人員提供更全面 的功能集合。

除了設計知足新的雲開發人員須要的服務外,OpenShift也是提供紅帽企業級JBoss服務(如交易、業務規則、交易與消息)的第一個公共 PaaS,從而爲企業開發人員提供一條升級到雲的方便途徑。因爲以紅帽在操做系統、虛擬化和JBoss 企業中間件的經驗和生態環境爲基礎,OpenShift能夠唯一地知足新的雲開發人員和企業的須要。

編輯總結:紅帽OpenShift提供比任何PaaS更多的靈活性,它支持用於Java、Python、PHP、Perl和Ruby的更多的開發框架,包括 Spring、Seam、Weld、CDI、Rails、Rack、Symfony、Zend Framework、Twisted、Django和Java E。其優勢是:開源帶來的不只是免費,還有自由;支持Java,PHP,Python,Perl,Ruby五種編程語言和對應的web框架;OpenShift Express爲用戶提供的服務並不只限於上述的web框架自己,還提供了豐富的接口供用戶安裝所需的庫、定製本身須要的web框架。

Google App Engine

Google App Engine也就是GAE,是Google推出的一款網絡運用程序,也是個免費虛擬主機空間,其實這比通常虛擬主機強悍的多,你能夠利用Google App Engine工具來開發網站或製做網絡應用程序,Google會在本身的龐大服務器集羣上爲你提供空間、帶寬、資源等。

Google App Engine對全球開發者免費開放使用,你能夠充分利用Google的提供的免費空間、免費數據庫、免費二級域名等來展現你開發的應用程序,提供給全球的用戶下載和使用。

只要你有一個Google帳號就能夠在Google App Engine上註冊和開通一個免費帳號,免費帳號容許你建立10個應用,每個應用提供1GB的容量,月流量是60GB(傳出帶寬是1GB/天,傳入帶寬1GB/天)。

簡而言之,Google App Engine容許你本地使用Google基礎設施構建Web應用,待其完工以後再將其部署到Google基礎設施之上。

編輯總結:經過 Google App Engine,即便在重載和數據量極大的狀況下,也能夠輕鬆構建能安全運行的應用程序。其優勢是:動態網絡服務,提供對經常使用網絡技術的徹底支持;持久存儲有查詢、分類和事務;自動擴展和載荷平衡;用於對用戶進行身份驗證和使用 Google 賬戶發送電子郵件的 API;一種功能完整的本地開發環境,能夠在您的計算機上模擬 Google App Engine。

百度Baidu App Engine

百度應用開放平臺是以用戶需求爲導向,以「框計算」創新技術和全開放機制爲基礎,爲廣大應用開發者及運營商提供的開放式應用分享暨合做的技術對接通道。以此,不只爲用戶實現了「即搜即用、即搜即得」的全新搜索體驗,也爲平臺合做者提供了展示自身應用的便捷接口。目前,百度應用開放平臺已正式對外開放,包括遊戲、視頻、音樂、閱讀、工具、生活等各種WebApp應用都可申請合做。

百度應用開放平臺的推出,源於用戶的搜索需求正呈現出新的發展趨勢——分析百度的搜索關鍵詞,咱們發現,網民與應用相關的搜索詞數量正不斷攀升,目前已經佔到總搜索數量的30%。所以,推出應用開放平臺,推進更多優質的應用資源與用戶需求直接對接,是大勢所趨,也是百度對「讓人們更便捷地獲取信息,找到所求」理念、不斷提高用戶搜索體驗的最好詮釋。

在開通BAE權限以後,開發者就可使用開發平臺了。在BAE開發平臺上,開發者能夠建立應用程序、建立程序的版本、進行版本管理、利用平臺提供的服務來開發程序、查看程序的各類信息以及刪除程序。

目前BAE提供了兩種方式來建立一個版本:打包對接方式和建立新版本。

對每一個程序版本,能夠進行以下的操做:生效版本,提供版本上線功能;對版本進行加解鎖,有效防止誤操做;SVN代碼管理,經過svn方式對代碼進行管理;配置,可對配置文件進行可視化修改;在線編輯,可對已經提交到平臺上的版本進行在線編輯,方便在線修改;若是版本已無用,則可刪除。

此外爲了便於開發者進行程序開發,平臺提供了以下服務:mysql服務、 memcache服務、cron服務、fechurl服務和雲存儲服務。

編輯總結:經過應用開放平臺,進一步促進產業之間的合做與創新,實現產業雙贏,引領互聯網產業的健康、蓬勃發展。其優勢是:搜索引擎做爲網民上網的主要入口,其平臺面向全部網民敞開,用戶能夠經過搜索引擎無門檻地接入和使用第三方應用;百度天天響應數十億次的搜索請求,讓應用開發者與海量需求實現有效對接;經過關鍵字實現需求對接,開發者更精準地找到本身想要的用戶,用戶也更精準地找到最優應用資源入口;經過百度應用開放平臺,更多優質的第三方應用和內容資源,將能夠直接與用戶需求無縫對接;現階段百度應用開放平臺上的應用,直接經過瀏覽器運行。將來會有涵蓋pc、無線平臺的應用,而且既有瀏覽器應用,也有獨立應用。

阿里Ali Cloud Engine

ACE(Aliyun Cloud Engine)是一個基於雲計算基礎架構的網絡應用程序託管環境,幫助應用開發者簡化網絡應用程序的構建和維護,並可根據應用訪問量和數據存儲的增加進行擴展。ACE支持PHP,NODE.JS語言編寫的應用程序;支持在線建立MYSQL遠程數據庫應用。

雲服務引擎(Aliyun Cloud Engine,ACE)是一套基於彈性計算服務的Web應用託管環境,能夠大大簡化開發和部署應用的複雜度。

ACE爲應用提供負載均衡、彈性伸縮、故障恢復、安全沙箱的支持,同時集成了Session、緩存、文件存儲、定時任務等分佈式服務,讓PHP、NodeJS等流行的Web開發語言能夠更加便捷地使用雲計算服務。

編輯總結:告別運維麻煩,配置和資源隨應用增加輕鬆擴展。其優勢是:ACE目前支持PHP運行環境,NodeJS運行環境,後續會支持更多的開發語言;提供分佈式session,分佈式memcache,開放存儲,消息隊列,計劃任務等多種服務,讓開發者能夠更多的關注在業務開發上,下降開發者的開發成本,其總體架構的高可靠性;自動彈性伸縮,無需人工干預運維,根據實際使用量計費;系統自帶常見應用模板。開發人員能夠將本身的應用作成模板,發佈其應用給其餘人使用;站長能夠從模板庫中在線建立應用,便可進行本身的網站運營;兼容原生API,調試信息輸出,能夠方便的進行應用管理和配置。

新浪Sina App Engine

SAE從架構上採用分層設計,從上往下分別爲反向代理層、路由邏輯層、Web計算服務池。而從Web計算服務層延伸出SAE附屬的分佈式計算型服務和分佈式存儲型服務,具體又分紅同步計算型服務、異步計算型服務、持久化存儲服務、非持久化存儲服務。

7層反向代理層:HTTP反向代理,在最外層,負責響應用戶的HTTP請求,分析請求,並轉發到後端的Web服務池上,並提供負載均衡、健康檢查等功能。

服務路由層:邏輯層,負責根據請求的惟一標識,快速的映射(O(1)時間複雜度)到相應的Web服務池,並映射到相應的硬件路徑。若是發現映射關係不存在或者錯誤,則給出相應的錯誤提示。該層對用戶隱藏了不少具體地址信息,使開發者無需關心服務的內部實際分配狀況。

Web服務池:由一些不一樣特性的Web服務池組成。每一個Web服務池實際是由一組Apache(PHP)組成的,這些池按照不一樣的SLA提供不一樣級別的服務。每一個Web服務進程實際處理用戶的HTTP請求,進程運行在HTTP服務沙盒內,同時還內嵌一樣運行在SAE沙盒內的PHP解析引擎。用戶的代碼最終經過接口調用各類服務。

日誌和統計中心:負責對用戶所使用的全部服務進行統計和資源計費,並設定的分鐘配額,來斷定是否有非正常的使用。分鐘配額描述了資源消耗的速度,當資源消耗的速度到達一個預警閾值時,SAE通知系統會提早向用戶發出一個警告,提醒用戶應用在某個服務上的使用可能存在問題,須要介入關注或處理,配額系統是SAE用來保證整個平臺穩定的措施之一;日誌中心負責將用戶全部服務的日誌彙總並備份,並提供檢索查詢服務。

各類分佈式服務:SAE提供幾乎能夠覆蓋Web應用開發全部方面的多種服務,用戶能夠經過StdLib(能夠理解爲SAE PHP版的STL)很方便的調用它們。

編輯總結:SAE的基本目標用戶有兩種,一種是Web開發者,另外一種是普通互聯網上網人羣。其優勢是:硬件成本更低,無需預先購買設備,承擔更大的投入風險;開發成本更低,SAE提供許多服務供開發者使用,開發者無需重複開發,包括隊列、數據庫、緩存、定時、驗證碼、計數器,幾乎覆蓋了Web開發的全部領域;運維成本更低,在SAE上的應用無需關心硬件維護、服務監控、數據容災等操做,SAE會經過其高可靠的架構和方便的監控頁面爲用戶將運維成本降到最低擴展性更強;更加安全可靠,SAE自動提供SQL語句性能分析、前端防攻擊、代碼檢查等功能,在SAE上的全部應用均爲多機房容災部署,比傳統的部署模式更加安全可靠,而且SAE提供服務的SLA來實現對用戶服務質量的承諾。

 

 

雲計算開發平臺提供商對比

 

 

雲開發平臺提供商優劣勢對比

 

結語:

小編認爲,各大的雲開發平臺的提供商都有本身的特色,各平臺的功能和涵蓋的領域以及面對的應用對象都有所不一樣。可是企業和我的在選擇的時候不但要看重技術和實力,更要看重本身的使用習慣、使用的易用性,這是很重要的。不管是國外的提供商想開拓中國市場,仍是國內的廠商望發展海外平臺,雲計算的路都還很長,雲開發平臺的技術研發也還有不少還沒有解決的困難,相信經過這些雲開發商的努力,會爲整個IT行業作出重要貢獻。

相關文章
相關標籤/搜索