独立租户,统一底座:基于Vue3打造的JVS开源多租户框架设计与实现

在数字化浪潮下,各个业务部门或子公司各自为政,系统林立,数据无法互通,形成了一个个"信息孤岛";每开发一个新应用,都需要从零搭建用户体系、权限管理和基础设施,耗费大量重复成本。

在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

相关推荐
云捷配低代码1 小时前
如何利用低代码实现复杂的业务逻辑
低代码
说私域2 小时前
基于开源链动2+1模式AI智能名片S2B2C商城小程序的社群运营创新研究
人工智能·小程序·开源
by__csdn5 小时前
Vue 中计算属性、监听属性与函数方法的区别详解
前端·javascript·vue.js·typescript·vue·css3·html5
l***74947 小时前
开源模型应用落地-工具使用篇-Spring AI-Function Call(八)
人工智能·spring·开源
食品一少年7 小时前
【Day7-10】开源鸿蒙之Flutter 的自定义组件封装(1)
flutter·开源·harmonyos
我叫张小白。8 小时前
Vue3监视系统全解析
前端·javascript·vue.js·前端框架·vue3
白茶三许12 小时前
【2025】Flutter 卡片组件封装与分页功能实现:实战指南
flutter·开源·openharmony
WYiQIU13 小时前
11月面了7.8家前端岗,兄弟们12月我先躺为敬...
前端·vue.js·react.js·面试·前端框架·飞书
zhu_zhu_xia14 小时前
vue3+vite打包出现内存溢出问题
前端·vue
思密吗喽16 小时前
宠物商城系统
java·开发语言·vue·毕业设计·springboot·课程设计·宠物