2014-12-04 56 views
1

所有Web應用程序,我幫助建設是多租戶能力,這意味着它可以承載相同的應用/數據庫上的許多客戶,而不需要看到對方。雲應用程序體系結構:在應用程序中構建多租戶意識?

現在,我們可以旋轉了新的PaaS-實例託管應用程序我想知道是否是有意義的下降多租戶意識和只使用一個數據庫和每個客戶一個Web應用程序的另一個實例。

優勢,我看到的是客戶端和客戶端的潛在的更簡單的安裝拆卸&之間更好的隔離。當我們嘗試生成一些租戶間報告時(可能或可能不需要特定應用程序),可能會出現缺點。

我的問題是,是不是真的使用雲概念來分隔客戶一個好主意?像這樣做的真實世界的應用程序?

順便說一下,如果它很重要,我們的新的應用程序將建在ASP.NET和託管爲Azure的網站,使用Cloudant爲DB層。另外,預期的客戶數量最多隻有幾百個,而不是數百萬。

回答

2

現在,我們可以旋轉了新的PaaS-實例主辦的 另一個實例的應用程序我想知道是否是有意義的下降多租戶 意識和只使用一個數據庫和每個客戶一個Web應用程序。

雖然從技術上講,你可以做到這一點 - 部署的每個客戶建立一個單獨的網站,有我可以預見到幾個問題:

  • 天青有限制,以你能有多少資源部署。例如,在標準計劃下,您最多可以部署500個網站。如果您超過500位客戶,會發生什麼?儘管你可以增加這個配額,但是我懷疑他們是否會讓它變得無限。有關訂閱限制,請參閱此鏈接:http://azure.microsoft.com/en-in/documentation/articles/azure-subscription-service-limits
  • 管理將成爲惡夢。假設你有一個新功能,你想讓每個租戶都可以使用它。在多租戶方案中,您只需部署一次您的更改。每個租戶都有自己的實例,您必須爲每個租戶進行部署。
+0

該應用程序的潛在客戶將是大公司,因此500已經是很多客戶。但我同意這是一個需要考慮的重要問題。我會更新這個問題以澄清預期的客戶數量。 – theDmi 2014-12-05 07:55:46

+1

如何爲100多位客戶部署更新?您必須確保在每個客戶端的web.config中正確配置了數據庫連接字符串,並且擁有構建/部署腳本。一個錯誤那裏,你就完了:) – 2014-12-05 07:59:36

+0

是的,你說得對,連接字符串會有所不同。這是一個重要的一點! – theDmi 2014-12-05 08:01:23