Google云計(jì)算AppEngine
Java版剛剛推出來(lái)的時(shí)候,我就申請(qǐng)了該服務(wù)。該服務(wù)的申請(qǐng)需要提供手機(jī)號(hào)碼驗(yàn)證,GOOGLE很牛B,能夠發(fā)送全球的手機(jī)短信。申請(qǐng)的帳號(hào)放了很久,
前段時(shí)間學(xué)習(xí)OpenID,需要作一個(gè)范例,于是就在Google
AppEngine上作,作的過(guò)程發(fā)現(xiàn)其不能使用線程,導(dǎo)致HttpClient組件無(wú)法工作,于是我修改了OpenID4Java的實(shí)現(xiàn),全部使用
URLConnection來(lái)實(shí)現(xiàn)。最終程序部署成功了,網(wǎng)址 http://cogito-study.appspot.com,歡迎大家測(cè)試使用。
我來(lái)說(shuō)一下我對(duì)Google AppEngine Java版本的使用感受吧。
1、
Google AppEngine
Java版本,具備基本功能,但是由于缺乏一些重要的功能,例如線程,沒有線程,很多庫(kù)無(wú)法使用,例如我上面提到的HttpClient不能使用。
Google提供一個(gè)類的白名單http://code.google.com/intl/zh-CN/appengine/docs/java
/jrewhitelist.html,大多數(shù)需要使用的類都有,javax.xml.crypto不再其中,使得我要部署一個(gè)SAML2的實(shí)現(xiàn)時(shí)玩不
轉(zhuǎn)。
2、Google
AppEngine提供了一個(gè)DataStore,使用JDO訪問數(shù)據(jù),其查詢語(yǔ)言支持GQL。基本功能是具備的,但是也是存在很大的局限性,最多返回
1000行數(shù)據(jù),COUNT(*)也是最多返回1000行。這個(gè)限制使得很多應(yīng)用要跑在其上,會(huì)很麻煩。
3、部署很簡(jiǎn)單,在Eclipse中使用Google提供的插件,輸入帳號(hào)密碼就可以部署了,太簡(jiǎn)單了。但我使用的過(guò)程中,經(jīng)常出現(xiàn)某些時(shí)段無(wú)法部署的情況,通常遇到這種情況,多嘗試幾次或者過(guò)段時(shí)間再嘗試就好了。
4、管理界面簡(jiǎn)潔方便,功能基本完備。包括性能監(jiān)控、數(shù)據(jù)管理、日志、計(jì)費(fèi)等都有。
總結(jié)
Google的AppEngine Java版本已經(jīng)具備了基本功能,可以部署簡(jiǎn)單應(yīng)用了,但是由于其功能不夠完備,目前大多數(shù)應(yīng)用要部署在其上,都會(huì)要做相當(dāng)大的修改或者無(wú)法實(shí)現(xiàn)。