應用程序引擎中的多租戶與名稱空間是如何工作的? 我的應用程序有多個用戶,每個用戶有點像多租戶中的租戶。 它們的URL以domain/customer/companyToken#pageName?param1 & param2開頭。 因此,從谷歌文檔,如果我想與命名空間應用多租戶,每個需要分配的NamespaceManager一個唯一的ID給每個客戶 因此,像下面的客戶 :Multitenancy如何在App Engine中使用對象化進行工作?
NamespaceManager.set(request.getServerName());
現在我有一個幾個問題。
具有App Engine的名稱空間的多租戶是如何工作的?
它如何改變我們訪問數據的方式?
它如何改變我們使用Objectify訪問數據的方式?
首先,我對上述應用程序的理解是,當檢索數據時,與上述客戶(租戶)有關的所有數據都聚集在同一個名稱空間中,那麼我們如何使用Objectify訪問數據更改?目前,公司obj作爲與客戶有關的所有obj的父項。 (所以在我的申請?)
非常感謝你提前。
感謝偉大的答覆。我還不確定#2。那麼「內部知道一個實體屬於哪個名稱空間」真的意味着什麼?它沒有關於實體關係的任何信息(在我的情況下,公司obj是父母,和用戶的obj屬於這個公司,等等),所以,當我查詢用戶的公司照常使用物化如何命名空間識別這家公司作爲家長和屬於這家公司的用戶等?謝謝。 – Mayumi 2011-05-08 18:45:11
設置一個命名空間和節省一些實體 - 現在這個單位屬於這個命名空間(因爲數據存儲API是名稱空間感知)。切換命名空間並嘗試獲取相同的實體(通過鍵) - 找不到它們。 – 2011-05-08 18:50:35
基本上,名稱空間感知意味着數據存儲將名稱空間數據保存到實體鍵中。我們只是沒有看到這個,因爲它沒有通過公開的API公開。如前所述(這是視頻中的),實體鍵還包含應用程序ID(在關鍵API中也不可見) - GAE知道哪些實體屬於您的應用程序。 – 2011-05-08 18:55:46