舊版套裝組合服務的 Namespaces API

Google App Engine 中的 Namespaces API 可供輕鬆進行 Google App Engine 資料的劃分作業。這個 API 是透過名為命名空間管理程式的新套件實作,並與特定具備命名空間功能的 API 整合。

在命名空間管理員中設定命名空間時,這些 API 將取得目前的命名空間並在全域使用。您可以在本機明確宣告命名空間,但是請謹慎執行此操作,因為您可能會不經意地造成資料外洩或其他錯誤。由於任何 App Engine 的要求都能存取任何命名空間,因此應用程式必須對命名空間強制執行存取權控管政策。

您可以使用 Namespaces API 來建構各式各樣的應用程式。多租戶架構應用程式則是這個 API 最受人注目的一項用途,詳情如下所述。

關於多租戶架構

「多租戶架構」是軟體架構的名稱。在這種軟體架構中,在遠端伺服器上運作的應用程式執行個體,可為多個用戶端機構 (也稱為「用戶群」) 提供服務。

使用多租戶架構可簡化用戶群的帳戶管理與佈建。您可以提供更精簡且更量身打造的使用者體驗,並在單一資料庫結構定義下,匯總不同的資料孤島。因此,應用程式的資源調度能力將變得更強大,在資源調度時也更能符合成本效益。由於所有用戶群共用同一個資料庫結構定義,因此各用戶群的資料變得更容易隔離與分析。不同的使用者群組能在更有效率的應用程式中,看到自訂的包裝內容。

透過 Namespaces API 建構多租戶架構應用程式

只要使用 Namespaces API,為每個用戶群指定不重複的命名空間字串,即可輕鬆劃分各個用戶群的資料。使用命名空間管理員就能直接為每個用戶群全域設定命名空間 (而不針對特定要求明確進行設定)。啟用命名空間的 API 預設會使用這個目前的命名空間。

Namespaces API 已與 Google Workspace 整合,因此您可以使用 Google Workspace 網域做為目前的命名空間。您可以使用 Google Workspace 將應用程式部署至自己擁有的任何網域,因此可以輕鬆為連結至 Google Workspace 帳戶的所有網域設定專屬命名空間

在設計多租戶架構應用程式時,您必須避免命名空間之間的資料外洩。詳情請參閱避免資料外洩一節。

使用命名空間的 App Engine API

App Engine 目前在下列 API 中支援命名空間:

使用命名空間的專案範例

使用命名空間的兩個留言板應用程式範例如下:

Namespace API 的其他用途

當 Namespace API 在 App Engine 啟用多租戶架構時,即會提供下列用途:

  • 將使用者資訊分門別類
  • 區分管理資料與應用程式資料
  • 建立不同的資料儲存庫執行個體,供測試環境與實際工作環境使用
  • 在單一 App Engine 執行個體上執行多個應用程式