2013-06-21 53 views
6

您好,我有一個與SAAS模型和多租戶相關的問題。針對SAAS的多租戶客戶特定定製

據我所知,SAAS多租戶應用程序意味着所有客戶端的常見功能 ,其中一些自定義UI和功能underNeath。

如果我需要爲某些客戶提供額外的客戶特定定製,我該如何實現它?

我知道的SalesForce

方法作爲答案,我apreciate看到你這樣的 體驗 - 在數據庫級, 自定義 - 後端的架構一般或 - 對這個話題的任何鏈接。

回答

9

定製多租戶應用程序有以下兩種方式 1.表示層次更改 2.系統更改。

以下是在多租戶環境中的Web應用程序優選的典型的定製選項,他們是

1)的用戶界面和品牌,

2)工作流程和業務規則,

3)數據模型擴展,和

4)的訪問控制

其中1個屬於表示層更改,其餘1個都形成多租戶應用程序中的系統級更改。

MVC被認爲是在哪裏,我們有允許承租人有自己的主題,標識和自定義佈局或定製的控制器和自定義頁面部分的選項表示層的定製選項。

對於系統設置,有很多方法可以實現這一點,但是,以下是在數據庫級別

  • 定製到中間件軟件最普遍的

    1. 定製。

    在SaaS應用程序中,有功能和實現。在後者的情況下,將會有一個特定於租戶的配置,根據他的配置來決定爲所考慮的租戶調用哪個實現,然後提供該服務。這些都是通過使用自定義依賴注入機制來實現的,該機制具有租戶感知能力,並且還需要特定於租戶的配置,以便在運行時期間使用,以促進此過程。

    在情況(1),在DB中的數據應當基於租戶標識符,使得配置或所述元數據不在多租戶環境中租戶之間共享進行分離。

    所以主要部件將是

    1. 從租戶上下文而獲得的租戶標識符
    2. 多租戶數據存儲
    3. 租戶特定的認證[形式簽名/單點登錄等。]

    恕我直言,因爲你的話題很廣泛,如果你能向我們介紹更具體的領域,我們將討論他們的實施。

    希望這回答您的查詢,請張貼您的更新。

  • +0

    謝謝,你的回答真的很有幫助。你有.net的實施經驗嗎? – Alexandr

    +0

    @亞歷山大:謝謝亞歷山大。我確實有實施經驗,但不是基於DI的租戶注入部分。我在這一點上遇到了一些實現和博客。請確保發佈與本帖相關的任何其他查詢。 – Saravanan