[GAE]什麼是Google App Engine?

2010年台灣颳起一陣雲端風,無論政府或是產業都積極地投入,而最近因為工作需求,開始研究雲端運算的各種應用,Google、IBM、Microsoft等大廠都針對雲端運算產業進行佈局,其中Google App Engine是我最感興趣的一項技術,所以將自己所了解的GAE寫成文章作個簡單的介紹

如果你是網路應用程式開發者在開發過程中定會遇到以下狀況:
「Application要在哪運行?自行購置主機還是虛擬主機?」
「購置主機要多快的運行速度?儲存體多大?網路流量?」
在決定基礎設施後,除了程式功能實作外還必須考慮安全性問題,以避免應用程式會因受到惡意攻擊而不正常運行,系統開始營運後當使用者快速成長,又要面臨系統基礎設施更新問題,使得開發者必須將人力、金錢與時間等資源投入與功能研發無關的營運事務上

Google App Engine於2008年上半季釋出preview測試,其推出的初衷正是要降低網路應用服務提供者投入服務營運之成本,提供網路App運行之平台,負責主機資源管理、後端資料儲存、安全性等工作,讓開發者可以專注於應用程式功能之研發,很多人一定會疑惑:同樣都是提供主機管理之服務,GAE跟主機代管(IDC)有什麼差異?我想最大的差別在於基礎設施的延展性(Scale)

IDC所提供的基礎設施是採時效買斷的方式,開發者要評估其需求選擇適合的方案,租貸期間不論系統營運狀況如何,開發者已投入的資源就無法抽離,GAE運用虛擬化技術讓基礎設施(儲存體、運算能力)具有延展性,讓網路應用服務提供者可以依據其營運實際使用的基礎設施資源支付費用,以「使用多少、付費多少」的原則,降低應用服務營運成本

「Easy to start, Easy to scale」是GAE服務提出的主要訴求,藉由提供App平台提供便於佈署的環境,減少系統開發過程的前置工作成本,再以延展性的基礎設施,讓多餘資源投入的狀況不再發生,GAE只要系統使用資源低於一定標準(500mb的儲存體、2g流量/天、5百萬頁面瀏覽/月),就可以完全免費使用它完整功能,這標準對於剛起步的網路服務可以說是相當足夠,未來即使服務快速成長,延展性基礎設施當下就可以因應狀況提供有效支援,GAE服務是雲端運算「PaaS」典範應用,它的出現對於網路服務開發者產生很大的幫助

留言

這個網誌中的熱門文章

[Android] layout_weight的妙用-讓View的大小以百分比率顯示(proportionate size)

[Android] 內部儲存體(Internal Storage)的檔案系統讀寫(File I/O)

【海外婚紗】造型篇-我的超人新祕Sunny-Yang