基于Oauth2实现的SAAS系统方案
项目地址:github
平台功能
服务 | 使用技术 | 进度 | 备注 |
---|---|---|---|
用户管理 | 自开发 | √ | 用户管理 |
租户管理 | 自开发 | √ | 租户管理 |
订单管理 | 自开发 | √ | 订单的审核和查询 |
商品管理 | 自开发 | √ | 管理员自定义组合菜单模块和插件形成商品 |
基地管理 | 自开发 | √ | 用户在成为租户后,可以对自己公司进行基地或者子公司的划分 |
插件管理 | 自开发 |
概念:
租户:购买SAAS服务的用户
用户:租户下的用户,真正使用产品的人
子公司/基地:租户下的子公司,多个子公司间数据也是隔离
方式:
用户注册的方式:
1、用户属于平台,用户自己在SAAS平台注册,由租户直接邀请注册等
2、用户属于租户,用户通过租户系统注册
应用架构:
单应用:不会有第三方,通过对一个应用划分版本来分配给租户。
多应用:租户按模块订阅应用(飞书),或者自定义模块,这里其实就是商品的概念。
资源
多个模块销售,其实就是对资源的分配。
资源的分配方式一般来说是菜单的分配,或者是按钮功能的分配。
资源的划分:模块划分,时间量划分
通用架构
架构
租户数据隔离方案:
通过Oracle数据库的用户间的数据隔离实现,每个租户为一个数据库用户。
分布式同步数据源方案:
消息队列实现分布式间数据源的同步