传统软件架构:客户层、表现层、控制层、业务逻辑层、数据库层
客户层: 一般指客户端和浏览器
表现层: 将客户端的请求提交到业务层, 将控制层的返回的数据渲染展示给客户
控制层: 等同于 MVC 中的控制层。接受表现层的请求寻找相应的业务处理
业务逻辑层:实现业务逻辑
数据库层:存放和管理用户所使用的数据
传统软件架构:客户层、表现层、控制层、业务逻辑层、数据库层
多租户数据存储方案
- 独立数据库
最便捷。物理上,每个租户都单独拥有自己的一整套数据,而且是单独存放。
具体来说,多个机器分别安装 MySQL 实例,每个企业使用单独一台机器。
- 共享数据库,隔离数据架构
所有租户共同使用一个数据库,但是各自有各自的一套不同的数据表结构。
具体来说,单台机器安装 MySQL,可以通过不同的 schema (库)区分,也可以通过表名区分,例如:a_user, b_user
- 共享数据库,共享数据架构
所有租户共享同一个数据表,同一个数据表结构,存储在同一模式中。
具体来说,将所有租户都记录在同一张表中,通过特定字段区分。例如,通过 TenantID 区别
赏
使用支付宝打赏
使用微信打赏
若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏
扫描二维码,分享此文章