在 App Engine 中,您只需針對超出免費配額的資源付費。超過免費配額後,費用會隨著應用程式收到的流量而增加。
如要限制 App Engine 應用程式的費用,您可以使用下列任一機制:
- 指定執行個體數量上限
- 建立預算快訊
- 手動停用應用程式
- 以程式輔助方式停用應用程式
指定執行個體數量上限
由於 App Engine 費用通常會根據應用程式收到的流量數量調整,因此您可以限制 App Engine 可建立的執行個體數量,以便控制費用。
將上限設為 1 個執行個體,通常就能讓執行個體小時用量維持在免費方案的範圍內。不過,如果將上限設得太低,應用程式可能無法擁有足夠的執行個體來妥善處理傳入的要求。
如要指定執行個體數量上限,請在應用程式的 app.yaml
檔案中使用 max_instances
設定。
建立預算快訊
當費用超過指定門檻時,系統就會傳送預算快訊。收到通知時,您可以降低 max_instances
設定的值或停用應用程式來限制費用。
如要開始使用預算快訊,請參閱「設定預算快訊」。
選取預算快訊的範圍
您可以針對一或多個專案中所有 Google Cloud 服務的總費用,或僅針對 App Engine 的費用建立預算快訊。
如要只針對 App Engine 的費用建立預算快訊,請在「預算快訊」的「產品」欄位中選取「App Engine」。當所有 App Engine 資源的總費用超過您指定的金額時,系統就會觸發快訊,包括:
- App Engine 標準環境中的執行個體小時
- App Engine 彈性環境中的執行個體小時數和 RAM
- 套裝組合 App Engine 服務
如需可計費 App Engine 資源的完整清單,請參閱「App Engine SKU」。
手動停用應用程式
停用應用程式後,系統會暫時停止提供應用程式,並停止產生與應用程式服務相關的帳單費用。應用程式的所有資料和設定都會保持不變,當您準備再次開始執行應用程式時,即可啟用應用程式。
應用程式處於停用狀態時,對應用程式提出的要求就會失敗。您可能會繼續產生其他 Google Cloud 產品的費用。舉例來說,如果您的專案已超出 Cloud Storage 免費配額,您仍須支付儲存空間費用。
詳情請參閱「停用應用程式」。
以程式輔助方式停用應用程式
您可以使用預算快訊、Pub/Sub 和 Cloud Run 函式,在費用超過指定的門檻時自動停用應用程式。
如同手動停用應用程式:
- 所有應用程式資料和設定都會維持不變。
- 準備好再次執行應用程式時,即可啟用應用程式。
- 應用程式處於停用狀態時,對應用程式提出的要求會失敗。
- 在應用程式停用期間,您可能會繼續產生其他 Google Cloud 產品的費用。
如何透過程式輔助方式停用應用程式:
建立預算快訊,以便傳送通知至 Pub/Sub 主題。詳情請參閱「管理程式輔助通知」。
如要只針對 App Engine 的費用建立預算快訊,請在「預算」的「產品」欄位中選取「App Engine」。如要瞭解哪些資源可觸發這項快訊,請參閱「建立預算快訊」。
在 Cloud Run 函式中建立由 Pub/Sub 主題觸發的函式。詳情請參閱「建立 Cloud Function」。
建立函式時:
請使用下列原始碼:
在函式的
requirements.txt
檔案中新增下列依附元件:在「要執行的函式」下方輸入
limit_use_appengine
。按一下「環境變數、網路、逾時及其他」。
選取具備 App Engine 管理員角色的服務帳戶。App Engine 預設服務帳戶預設會具備這個角色。
測試函式。
當預算快訊觸發時,系統會傳送電子郵件給Cloud Billing 帳戶中的使用者,函式也會開始停用您的應用程式。這個程序可能需要幾分鐘才能完成。
如要確認函式是否已成功執行,請查看 App Engine 資訊主頁。頂端會顯示訊息,指出應用程式已停用。
如要讓應用程式繼續處理要求,請前往「Application settings」(應用程式設定),然後按一下「Enable application」(啟用應用程式)。
前往「Application settings」(應用程式設定)