Google App Engine(GAE)的最新升級已經(jīng)開始支持Java,并且添加了一系列專門瞄準企業(yè)業(yè)務(wù)的新功能;此后,Google還發(fā)布了一款Eclipse插件,可以對Google App Engine的Java開發(fā)提供強力支持。原先的GAE主要是一個以消費者網(wǎng)絡(luò)應(yīng)用為重點的云計算產(chǎn)品,相比較功能的多少,Google更關(guān)注于它的性能是否穩(wěn)定,以及高擴展性。它將云計算 精簡到一個新的水平,同時保持了運行的迅速。以前的GAE需要使用Python語言,專有的數(shù)據(jù)庫,以及請求/響應(yīng)的應(yīng)用模型。
Google在保持優(yōu)點的同時,為GAE做了最新的升級,帶來了許多企業(yè)需要的新功能和新技術(shù),使新的云計算平臺得到更廣泛的用途。
GAE的新功能
支持Java虛擬機?,F(xiàn)在,你可以在GAE中運行Java 5和Java 6的代碼,只要它不破壞Google的服務(wù)器。鑒于大多數(shù)企業(yè)都已經(jīng)應(yīng)用了標準化的.NET或Java環(huán)境,這個升級是條大新聞,因為以前GAE只支持 Python。這大大減少了企業(yè)進入GAE的障礙,因為代碼不用完全重寫了。另一個關(guān)鍵的新區(qū)別是Google決定直接支持Java字節(jié)碼,而不只在源代 碼級做到兼容。這等于為GAE帶來了無窮的新功能,例如依賴注入dependency injection,面向方面編程(AOP),和表達式語言運行時(expression language runtimes)等許多現(xiàn)在流行的Java平臺上的實用功能。這也意味著幾乎任何編程語言都能夠在GAE的Java虛擬機上運行。Google已經(jīng)為 GAE測試過Groovy、JavaScript、Python、Ruby、Scala和Scheme等幾乎全部時下流行的開發(fā)語言。
訪問企業(yè)內(nèi)部資源。GAE提供了新的安全數(shù)據(jù)連接器(Secure Data Connector,SDC),為企業(yè)在GAE中使用自己的數(shù)據(jù)、網(wǎng)絡(luò)服務(wù)和SOA提供了一個安全的隧道,而不需要將數(shù)據(jù)移動到云中。SDC要求 Google Apps Premier版本,在防火墻內(nèi)為GAE應(yīng)用和企業(yè)數(shù)據(jù)之間提供了一個完全加密保障。通過SDC,GAE可以比以前更直接更安全的廣泛訪問企業(yè)數(shù)據(jù)。
數(shù)據(jù)庫導(dǎo)入。某些類型特別是高性能的應(yīng)用要求企業(yè)數(shù)據(jù)轉(zhuǎn)移到Google的云中。新的GAE數(shù)據(jù)庫導(dǎo)入工具可以使企業(yè)將數(shù)據(jù)大量從本地導(dǎo)入GAE。這將使企業(yè)能夠在需要時更容易更迅速的將產(chǎn)品數(shù)據(jù)集遷移到GAE。
支持批量工作。GAE原先只提供單獨的請求/響應(yīng)模型,就像Web本身的HTTP GET/POST方法等。這使GAE的計算平臺只是在網(wǎng)絡(luò)出現(xiàn)外部訪問要求時才會工作,而后臺處理工作則受到限制。因此在之前企業(yè)必須在GAE之外自己建 立批量工作。而現(xiàn)在,GAE內(nèi)置了Cron支持,可以同時支持請求/響應(yīng)模型和后臺處理,滿足了強大的企業(yè)級應(yīng)用需要,因為后臺處理常用于完成比如備份、 生成報告、異步處理等重要的任務(wù)。
GAE依然缺乏的功能
GAE新增加的功能非常重要,當然也會收到企業(yè)的歡迎。但我們認為,在許多企業(yè)已經(jīng)發(fā)展出許多自己的具體技術(shù)需求下,GAE尚未能提供足夠的功能滿足他們的需要
消息隊列。當處理大量數(shù)據(jù)或眾多事件時,應(yīng)用程序需要擁有在無法全部處理時存儲信息的消息隊列方法。雖然云計算平臺在理論上具有足夠的彈性來處理所 有消息,但現(xiàn)實的物理情況(也許有成本考慮)是在處理大量信息和重型任務(wù)時,應(yīng)用程序會出現(xiàn)問題。Amazon提供的云服務(wù)已經(jīng)通過SQS具有了消息隊列 功能,建議GAE也考慮一下。
服務(wù)器端push和實時事件。許多類型的商業(yè)應(yīng)用都不能經(jīng)濟有效地使用polling來查看數(shù)據(jù)是否發(fā)生了變化,或者重要事件的發(fā)生。雖然 Google將服務(wù)器端的超時反應(yīng)時間縮短到30秒,但在關(guān)鍵事件發(fā)生時GAE仍然缺乏有效的方式快速通知外部系統(tǒng)。而實時事件的處理也是非常重要的,尤 其是對于呼叫中心、財政系統(tǒng)、醫(yī)療系統(tǒng)這樣的需要快速將業(yè)務(wù)數(shù)據(jù)傳輸?shù)骄W(wǎng)絡(luò)客戶端的應(yīng)用。
SQL數(shù)據(jù)庫支持。GAE內(nèi)置的Datastore據(jù)說是基于BigTable的,而不是SQL。雖然它為Petabyte級海量數(shù)據(jù)設(shè) 計,但具有局限性,無法發(fā)揮高性能。SQL數(shù)據(jù)庫是今天的企業(yè)支柱,可以說如果不支持SQL,將使許多應(yīng)用無法移到Google的云中。同樣的,在對 SQL的支持方面Amazon又提前了一步。Google堅持使用其獨特的數(shù)據(jù)庫可能會提高GAE的性能和可擴展性,但不應(yīng)該建立在犧牲通用的應(yīng)用模型和 開發(fā)者的習(xí)慣的基礎(chǔ)之上
企業(yè)友好的管理和監(jiān)測工具。Tivoli、Patrol和其他一些IT管理工具是如今企業(yè)管理本地IT資源和數(shù)據(jù)中心的主要手段,企業(yè)也需要一個統(tǒng) 一的管理方法來管理
更多詳細信息,請您微信關(guān)注“計算網(wǎng)”公眾號: