跳至內容

Google應用服務ia̋n-jín

出自Taiwan Tongues 台語維基
這是此頁批准,以及是最近的修訂。

Google 應用服務 ia̋n-jín是一个開發、代管網路應用程式的平台,使用 Google 管理的資料中心。伊佇二空空八年四月發佈矣頭一个 beta 版本。

Google 應用服務 ia̋n-jín 使用矣雲端運算技術。伊迒過真濟个侍服器佮資料中心來虛擬化應用程式。

Google 應用服務 ia̋n-jín 咧使用者使用一定的資源的時陣是免費的喔。支付額外的費用會當得著應用程式所需要的閣較濟儲存空間、頻闊抑是 CPU 負載。

支援的程式語言佮框架

當前,Google 應用服務 ia̋n-jín 支援的程式語言是 Python、Java、PHP 和 Go(通過擴充,會當支援其他 JVM 語言,諸如 Groovy、JRuby、Scala 和 Clojure)。 支援 Django、WebOb、PyYAML 的有限版本。Google 講伊準備佇咧未來支援閣較濟的語言,Google 應用服務 ia̋n-jín 嘛會獨立佇某一種語言。任何支援 WSGI 的使用 CGI 的 Python 框架會當使用。框架會當佮開發出的應用程式做伙來傳,嘛會當上傳使用 Python 編寫的第三方庫。

佮其他應用程式代管區別

佮其他會使延伸的代管服務(比如講 Amazon EC 二)比較,App Engine 提供予愈濟的基礎服務來方便編寫會當延伸的應用程式,但是干焦限於 App Engine 設計框殼以內的應用程式。

App Engine 的基礎服務省煞誠濟系統管理的操作,以便會規模擴大到數以百萬計的存取。Google 負責處理一組代碼,會當監測、容毋著,佇咧必要的時陣閣會開發一寡應用實例。

有一寡應用程式代管服務予使用者安裝、組態差不多所有 \ * NIX 相容的軟體,而且 App Engine 是要求開發者使用 Python 抑是 Java 語言來編程,而且干焦會當使用一套限定的 API。當前的 API 允准程式佇一个 BigTable 非關聯式資料庫上儲存佮檢索資料、提出 HTTP 請求、傳送 E-mail、處理圖像、閣有緊取。大多數現存的 Web 應用程式,若無經過修改,攏袂當直接佇 App Engine 上執行,因為𪜶需要使用關聯式資料庫。

頻闊佮 CPU 的使用、送達請求的數量、並且行請求的數量、以及呼叫各種 API 的次數,攏設有逐工佮逐分鐘的限額。個別的請求,若準需時超過三十秒抑是倒轉超過十 MB 的資料,攏會去予終止。

SQL 佮 GQL 的區別

Google 應用服務 ia̋n-jín 的 Datastore 使用一个佮 SQL 類似的語言,叫做「GQL」。 佇咧 GQL 中,SELECT 語句干焦會當用佇一个表現。因為愛迒過毋但一台機器,GQL 無支援效率足低的 JOIN 語句。伊欲建立一對多佮多對多的關係,會用得 ReferenceProperty ( )。採用這種不把享的方式,就算磁仔歹去,系統嘛無致半遂。

佇咧 GQL 中,SELECT 語句內底的 WHERE 句句干焦盡磅嘿干焦一列進行 >、>=、< 抑是 <=比較。所以乎,干焦會當構造簡單的 WHERE 從句。佇資料建模的時陣,愛對關聯式資料庫轉換著 Datastore,開發者需要轉變觀念。

App Engine 限制逐擺 Datastore 請求上濟倒轉來一千个資料。大多數啦 Web 應用程式,攏袂受此影響,因為𪜶通常並袂佇一張頁面頂列出超過一千條記錄(會當用分頁佮快取的機制), 只要照順序倒轉來就會使矣。若有應用程式需要佇一擺操作閣倒轉來閣較濟的記錄,著愛家己使用客戶捀軟體抑是 Ajax 頁面,照顧順序提供閣較濟條記錄。

這乎 Datastore 的 API 是無關聯的,有別於一般的關聯式資料庫—— 比如講 IBM DB 二、Microsoft SQL Server、MySQL、Oracle 資料庫、抑是講 PostgreSQL。

限制

  • 佇咧 App Engine 的檔案系統當中,開發者干焦讀取的權限。
  • App Engine 干焦會當回應 HTTP 請求彼陣來執行代碼(計畫的後台任務、任務在列和 XMPP 服務是無在此限)。
  • 使用者會當上傳任意的 Python 模組,但是必須是純 Python 模組,不得包括 C 擴充程式抑是其他需要編譯的代碼。
  • App Engine 限制逐擺 Datastore 請求上濟倒轉來一千个資料。
  • Java 應用程式干焦會當用啦 JRE 基本版本類別館中的一个子集(JRE 類白名單)。
  • Java 應用程式袂當建立新的執行緒。

可移植性

開發者煩惱 App Engine 應用程式袂當徙栽去其他的平台頂,被困佇咧單一種技術 ( Vendor lock-in ) 之內。

對 App Engine 下載資料

App Engine 自 SDK 一孵二 . 二版開始,已容允批次的方式下載資料。此外,使用者嘛會當使用開源專案 gaebar、approcket 和 gawsh 來下載、備份佇 App Engine 上的資料。

限額

免費戶頭來使用 App Engine 時,受配額的限制。應用程式作者會當看著需要,付錢購買閣較濟配額。

硬性限制

免費的配額

供免費使用的配額捌佇二空空九年五月二五、二空空九年六月二二以及二空一一年五月三度下調。

競爭對手

Google 應用服務 ia̋n-jín 佮 Amazon Web Services(一个應用程式服務系統,支援佇咧 Amazon 的侍服器上代管檔案、執行代碼)直接競爭。袂少科技分析師早佇多年前已經按算過,Google 會加入這場競賽。其中,Techdirt 的出版人 Mike Masnick 寫甲,「 Google 總算了解講伊需要佔網路平台這个地位。阮會當期待,開發佮落實應該會擴充的網路應用程式會變甲那來那簡單,應用程式嘛會愈來愈具創意。」

此外,紅帽公司的 openshift、微軟乎 Azure 服務平台佮 Koding 嘛是啦 Google 應用服務 ia̋n-jín 的競爭對手。

中華人民共和國封鎖

因為 Google 應用服務 ia̋n-jín 允准使用者代管網路應用程式,而且侍服器毋是佇咧中華人民共和國境內,故有部份使用者利用其搭建代理(如 GoAgent)用佇咧突破防火長城的審查,故 Google 應用服務 ia̋n-jín 的域名 \ * . appspot . com 的 SSL 加密連接長期拄著防火長城的封鎖。

  • 二空一空年十二月二十,Google 應用服務 ia̋n-jín 的域名 appspot . com 拄著防火長城的關鍵詞過濾封鎖。因為進前 Google 應用服務 ia̋n-jín 的 SSL 連接已經予人封,故中華人民共和國境內的使用者並無法度正常連接佮使用。這改 Google 應用服務 ia̋n-jín 予人封鎖拄好二空一空年諾貝爾和平獎頒獎典禮。appspot . com 非加密連接佇二空一空年十二月二十三號解封。
  • 二空一一年三月兩會召開前一暝,appspot . com 再次拄著防火長城的關鍵詞過濾封鎖佮域名汙染,就仝時陣侍服器的 IP 位址亦拄著徹底封鎖,甚至兩會結束了後到今也無解封。
  • 到今 appspot . com 猶原拄著 DNS 投毒汙染、URL 域名關鍵詞過濾佮侍服器 IP 位址封鎖三重封鎖,無法度對中華人民共和國正常存取,但是猶原有一寡軟體抑是使用者通過修改本機 Hosts 等方法去踅過封鎖以使用 GAE。

參考文獻

外部連結

  • Official marketing page
  • 官方網站
  • Official Google Cloud Platform Blog
  • Release notes
  • Google 應用服務 ia̋n-jín-Run your web applications on Google's infrastructure-a technical talk by Google engineer Guido van Rossum at Stanford University . ( online video archive )
  • Benefits of adopting Google 應用服務 ia̋n-jín
  • Using an external database with Google 應用服務 ia̋n-jín
  • Java Frameworks and libraries supported
  • Web 二 py book--online documentation--Google 應用服務 ia̋n-jín deployment recipe
  • Google Cloud SQL Sample Projects
  • Google Cloud supports node . js
  • Appmd: Python development sample project . App Engine / django / Google Closure / Endpoints / Material design