在數字化浪潮下,各個業務部門或子公司各自為政,系統林立,數據無法互通,形成了一個個“信息孤島”;每開發一個新應用,都需要從零搭建用户體系、權限管理和基礎設施,耗費大量重複成本。
在gitee上有一個開源的基礎框架項目,它是基於多租户架構的統一數字化底座。JVS以獨特的設計理念,將平台級與租户級能力完美融合,為不同規模、不同業務場景的企業帶來前所未有的數字化體驗。
JVS統一數字化底座支持多租户體系,所以底座的能力劃分就包含兩個層級的能力:平台級與租户級,如下圖所示:
租户(Tenant): 解釋“租户”可以是集團下的不同子公司、不同業務部門,或是外部不同的客户企業。每個租户在平台上是一個邏輯上完全隔離的空間。(對應圖中的租户A、租户B、租户M),每個租户可以構建自己的應用。
平台,指為所有租户提供共用技術能力、運營支持和基礎設施的核心層。核心特徵是統一性、共享性、經濟性。
主租户與子租户,系統在構建的時候,會默認創建一個 主租户(系統唯一),這個主租户可以看到平台相關的管理界面,主租户的管理員可以在 平台管理中創建子租户。
租户的管理功能如下圖所示,包括基本的用户管理、角色管理、登錄公告管理等、租户級別的應用管理(可以設置應用的logo、應用的名稱等)、租户級別的會話管理、登錄日誌等、環境變量等基礎設置,這裏的管理 是每個租户都有相關的管理功能。
平台的管理功能如下圖所示,包括租户的管理、平台上的基礎應用的配置、基本的系統設置等等,這裏的配置 只有主租户才有 管理功能。
多租户體系解釋
我們先看個例子,什麼是多租户,我們以釘釘舉例,想象一下,有三家公司:
• A公司(比如一家設計公司,有50名員工)
• B公司(比如一家貿易公司,有200名員工)
• C公司(比如一家初創公司,只有10名員工)
他們都使用了釘釘上面的客户管理(CRM)的系統,大家都在共享使用CRM這個系統,這個系統格式有 阿里釘釘團隊開發運維的,但是A 公司裏邊的用户組織 與B公司裏邊的用户組織是完全獨立的。 我們常見的SaaS應用都是屬於多租户體系。
用户與租户
往往在使用過程中存在一個問題:用户是否可以在不同租户中切換?同樣還是上面的例子,也就是公司A 僱傭了小張,同時公司B也僱傭了小張,那麼小張可以在A 和 B公司之間切換,也就是在不同的身份間進行切換
JVS租户切換
JVS中是支持多租户的 ,也是支持用户在不同租户中切換,登錄系統後,點擊用户頭像
系統會彈出用户中心的操作界面,如下圖所示,用户可以點擊不同的租户進行切換,以達到切換不同的身份的目的。
在線demo:https://frame.bctools.cn/
開源框架:https://gitee.com/software-minister/jvs