全域和區域應用程式

App Hub 適用於支援的位置,可協助您在 App Hub 應用程式中,整理全域或區域 Google Cloud 基礎架構資源。位置支援功能可讓您根據應用程式元件的地理位置,以及與基礎架構其他部分的通訊方式,將元件分組,簡化管理作業。

建立應用程式時,您會將其位置定義為「全域」或「區域」。這項選擇是決定哪些服務和工作負載可納入應用程式的關鍵。此外,這項選擇也會對資料處理、共置、成本和法規遵循產生重大影響。全域和區域應用程式的定義如下:

  • 全域應用程式:將分散於全球或多個 Google Cloud 區域的服務和工作負載,依功能分組。例如,您可以加入全域應用程式負載平衡器服務,以及分布在全球各地的後端工作負載。

  • 區域性應用程式:將完全位於單一 Google Cloud 區域內的服務和工作負載,依功能分組。例如,您可以加入區域性應用程式負載平衡器服務及其後端工作負載,全部位於 us-central1。

為做出最符合需求的決策,請務必瞭解Google Cloud 區域和可用區,這些設計旨在提供容錯能力和高可用性。區域是獨立的地理區域,可用區則是區域內的部署區域,可做為單一故障域。如要進一步瞭解全域和區域資源,請參閱「地理位置與區域」和「Cloud 位置」。

比較全域和區域性應用程式

下表列出主要差異和考量事項,協助您選擇全域或區域性應用程式:

全球應用 區域性應用程式
建議用途 最適合具有全球性或分散在多個區域的元件的應用程式。 如果所有應用程式元件都位於同一個 Google Cloud 區域,即使跨越多項專案,也建議使用這項設定。
資源範圍 可包含任何區域的全域和區域 Google Cloud 資源。 只能包含與應用程式位於相同單一區域的 Google Cloud 資源。您無法在區域性應用程式中註冊全域元件。
應用程式中繼資料 儲存在多個區域,可從任何區域存取。 Google Cloud
不支援資料落地。
儲存在特定區域內,但可從任何其他 Google Cloud 區域存取。
使用區域端點時,系統支援資料落地。
範例 管理全域負載平衡應用程式,並在各個區域中加入後端元件,集中查看分散式系統。 管理應用程式,其中包含 us-central1 中的所有服務和工作負載。

為應用程式選取最佳位置

選擇全域或區域位置時,請考量應用程式代表的業務功能架構和作業需求。以下比較是基於地理位置考量:

  • 一般來說,區域性應用程式比全域應用程式更具優勢。如要降低元件延遲時間、符合資料位置規定、節省潛在網路費用,以及與區域專屬 Google Cloud功能保持一致,請選擇「區域」應用程式。
  • 如果應用程式元件必須分散在多個區域,或依賴全域 Google Cloud 資源,請選擇「global」(全域) 應用程式。

您可能在多個區域中擁有 Google Cloud 資源,但這些資源並未形成單一、具凝聚力的全域函式。在這種情況下,最佳做法通常是為每個區域內的元件定義個別的區域應用程式。這種做法可為每個部署作業充分發揮區域化的優勢。

Google Cloud 資源階層定義了資料夾和專案的組織方式,也是一項基本要素。無論是區域性或全球性,只要妥善規劃階層結構,並與應用程式管理邊界保持一致,就能簡化應用程式中服務和工作負載的分組和管理作業。詳情請參閱「選擇應用程式設定模型」。

區域性應用程式的優點

全域應用程式可為分散式系統提供彈性。不過,為 App Hub 應用程式選擇區域位置,可帶來顯著優勢:

  • 支援資料落地和法規遵循:使用區域端點存取區域應用程式時,App Hub 中繼資料支援資料落地。這有助於確保應用程式中繼資料,以及基礎Google Cloud 資源處理和儲存的資料,都保留在您選取的地理限制範圍內。這項優勢對於遵守法律、法規和組織對資料位置和資料主權的要求至關重要。

  • 縮短延遲時間:將應用程式元件放在同一個區域,通常能盡可能縮短元件之間的網路延遲時間,進而提升應用程式效能和使用者體驗。

  • 符合產品功能需求:某些 Google Cloud 產品或功能會要求所有互動元件位於相同區域。舉例來說,Compute Engine 執行個體只能連接位於相同區域的永久磁碟。區域性 App Hub 應用程式本身就符合這類架構限制。

  • 最佳化成本:在不同 Google Cloud 區域之間移轉資料通常會產生網路費用,而在同一區域內的網路流量通常價格較低。在區域內建立應用程式,即可更妥善地管理及降低跨區域網路費用。

  • 與故障域保持一致: Google Cloud 區域設計為獨立的故障域。在單一區域內部署應用程式,並使用該區域內的多個可用區來確保高可用性,可讓應用程式的容錯能力與 Google Cloud的基礎架構彈性模型保持一致。

後續步驟