独立租户,统一底座:基于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

相关推荐
大千AI助手4 分钟前
程序合约:形式化验证中的规范与实现框架
分布式·区块链·软件开发·形式化验证·大千ai助手·程序合约·contracts
梦帮科技27 分钟前
Scikit-learn特征工程实战:从数据清洗到提升模型20%准确率
人工智能·python·机器学习·数据挖掘·开源·极限编程
时光追逐者35 分钟前
一个基于 .NET 开源、功能强大的分布式微服务开发框架
分布式·微服务·开源·c#·.net·.net core
weixin_462446231 小时前
【原创实践】开源扣子 coze-studio 安装本地插件配置:接入“今日诗词”API(获取所有古诗词)
开源·开源扣子
running up1 小时前
Pinia 完整使用指南
vue
探索宇宙真理.2 小时前
WordPress AI Engine信息泄露漏洞 | CVE-2025-11749 复现&研究
人工智能·经验分享·开源·安全漏洞
万岳软件开发小城3 小时前
同城家政服务系统源码:保洁+维修+预约+上门一体化开发详解
php·软件开发·上门预约系统源码·预约app开发·预约家政小程序开发
安_3 小时前
<style scoped>跟<style>有什么区别
前端·vue
AI猫站长3 小时前
商汤科技孵化“大晓机器人”,联合创始人王晓刚亲自挂帅,推出开源世界模型3.0与具身超级大脑模组,万亿具身智能赛道再迎重量级玩家,行业竞争格局生变
科技·机器人·开源
zhaodiandiandian3 小时前
从跟跑到领跑 开源AI开启中国时间的产业变革
人工智能·开源