選擇 App Engine 環境

您可以使用 App Engine 彈性環境App Engine 標準環境,在 App Engine 中執行應用程式。您也可以選擇讓應用程式同時使用這兩種環境,並允許服務運用每個環境的各自優點。

App Engine 環境

App Engine 非常適合使用微服務架構設計的應用程式,特別是當您決定利用這兩種環境時。請參閱以下部分,瞭解哪個環境最符合應用程式的需求。

選擇標準環境的時機

應用程式執行個體使用以下所列支援程式語言的執行階段環境,在沙箱中執行時。

應用程式需要處理快速資源調度時。

標準環境最適合具有以下特性的應用程式:

  • 設計目標為以免費或非常低廉的價格執行,依用量及使用時間付費。例如,如果沒有流量,應用程式會將資源調度降至 0 個執行個體。
  • 突發性的流量尖峰期間,可以立即調度資源。

選擇彈性環境的時機

應用程式執行個體在 Compute Engine 虛擬機器 (VM) 的 Docker 容器中執行時。

應用程式持續接收流量、定期遇到流量波動情形,或者符合逐漸擴充或縮減條件時。

彈性環境最適合具有以下特性的應用程式:

  • 在 Docker 容器中執行,其中包含自訂執行階段或以其他程式設計語言撰寫的原始碼。
  • 使用或依賴某些架構,包括原生程式碼
  • 存取位於 Compute Engine 網路中的 Google Cloud 專案資源或服務。

比較高階功能

下表大致列出了這兩種環境之間的差異:

功能 標準環境 彈性環境
執行個體啟動時間 分鐘
要求逾時上限 執行階段和調度類型而定。 60 分鐘
背景執行緒 有,但有限制
背景程序
SSH 偵錯
資源調度 手動、基本、自動 手動、自動
將資源調度降至零 無,最少 1 個執行個體
寫入至本機磁碟 具備 /tmp 目錄的讀取和寫入權限。 支援,但為暫時性操作 (磁碟於每次 VM 啟動時初始化)
修改執行階段 有 (透過 Dockerfile)
部署時間 分鐘
自動提供安全性修補程式 有 (容器映像檔執行階段除外)
存取 Google Cloud API 與服務,例如 Cloud StorageCloud SQLMemorystoreGoogle Tasks 等。
WebSocket
支援安裝第三方二進位檔
位置 標準環境的地點 彈性環境的地點
定價 依據執行個體時數 依據 vCPU、記憶體與永久磁碟的使用量

另請參閱環境比較表

比較 App Engine 和 Cloud Run

如要比較功能並瞭解如何遷移至 Cloud Run,請參閱「比較 App Engine 和 Cloud Run」。

比較彈性環境與 Compute Engine

App Engine 彈性環境與 Compute Engine 之間存在下列差異:

  • 彈性環境 VM 執行個體每週會重新啟動一次。在重新啟動期間,Google 的管理服務會套用任何必要的作業系統與安全性更新。

  • 您一律擁有 Compute Engine VM 執行個體的根目錄存取權。根據預設,彈性環境會停用對於 VM 執行個體的 SSH 存取權。您可以選擇啟用應用程式 VM 執行個體的根目錄存取權。

  • 使用 Cloud Build 服務建構容器映像檔時,部署程式碼可能需要較長時間。

  • 彈性環境 VM 執行個體的地理區域由您為Google Cloud 專案的 App Engine 應用程式指定的位置決定。Google 的管理服務可以確保共置 VM 執行個體以獲得最佳效能。

從標準環境遷移至彈性環境

如果您的應用程式處於標準環境,可能會想要將某些服務移至彈性環境。如需相關指引,請參閱環境比較中的建議。

如要遷移 Python、Java、Go 和 PHP 的特定服務,請參閱「將服務從標準環境遷移至彈性環境」。

歡迎試用

如果您未曾使用過 Google Cloud,歡迎建立帳戶,親自體驗實際使用 Ruby 標準環境的成效。新客戶可以獲得價值 $300 美元的免費抵免額,可用於執行、測試及部署工作負載。

免費試用 Ruby 標準環境