管理 yaml 設定檔

本文可協助您瞭解如何為 App Engine 應用程式中的服務及相關資源建立結構。

目錄結構

App Engine 服務的每個版本都是透過 app.yaml 設定檔來定義的。定義 app.yaml 檔案是部署簡易應用程式的最低需求。app.yaml 檔案的作用就像是部署作業描述元,可針對服務的特定版本來定義資源調度類型和 CPU、磁碟及記憶體資源。如要部署某項服務的數個版本,您可以在相同目錄中建立多個 YAML 檔案來表示各版本的設定。

Eclipse Jetty 9Java 8 執行階段使用的是採 YAML 格式的設定檔。

檔案組織需視您使用的 Java 執行階段而定。您可能需要 WAR 檔案或 JAR 檔案 (應用程式中的每項服務各一個檔案)。詳情請參閱適用的 Java 執行階段開發人員指南。

執行個體運作時間的設計注意事項

系統可能會無預警地發生軟硬體故障,導致作業提前終止或執行個體頻繁重新啟動,而且可能需要耗費大量時間才能解決問題。您的應用程式應該具備處理此類故障問題的能力。

您可以採取幾項有效的策略,以避免因執行個體重新啟動而導致停機的狀況:

  • 減少重新啟動執行個體或啟動新執行個體所需的時間。
  • 對於需要長時間執行的運算,請定期建立查核點,以從查核點的狀態繼續執行。
  • 您的應用程式應處於「無狀態」,才不會在執行個體上儲存任何資料。
  • 使用佇列執行非同步工作。
  • 如果您將執行個體設定為手動調整資源配置:
    • 在多個執行個體之間使用負載平衡。
    • 設定超過處理一般流量所需的執行個體數量。
    • 撰寫可在無法手動調整執行個體的資源配置時,使用快取結果的回退邏輯。

如要進一步瞭解執行個體,請參閱執行個體的代管方式

default 服務

每個 App Engine 應用程式均包含 default 服務。您必須先將應用程式的初始版本部署至 default 服務,然後才能為應用程式建立及部署其他服務。

您可以在 app.yaml 中設定 service: default,視需要指定預設服務。

系統會將使用 GCP 專案傳送至應用程式的要求傳送至 default 服務,例如 https://[PROJECT_ID].appspot.com。如要進一步瞭解如何指定其他服務當做目標,請參閱在服務之間進行通訊

選用設定檔

您可以使用下列設定檔,以控制套用至個別應用程式中所有服務的選用功能。請參閱下列主題,進一步瞭解每個選用功能的詳細資訊:

資料和檔案儲存空間注意事項

您可以輕鬆地從 App Engine 存取 Cloud DatastoreCloud SQLCloud Storage 等其他 GCP 服務。

您也可以使用外部或第三方資料庫,前提是您使用的程式語言能夠支援該資料庫,而且您也能透過自己的 App Engine 執行個體存取該資料庫。

如需進一步瞭解如何在 GCP 或在外部儲存檔案,請參閱瞭解資料與檔案儲存空間

您也可以選擇靜態內容的提供方式。您可以從 App Engine 的應用程式直接提供應用程式的靜態內容、在 Cloud Storage 之類的 GCP 選項上託管靜態內容,或是使用第三方內容傳遞聯播網 (CDN) 提供。如要進一步瞭解如何提供靜態內容,請參閱提供靜態檔案一文。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Java 適用的 App Engine 彈性環境文件