当前位置:   article > 正文

SaaS 多租户【字段隔离】_请求的租户标识未传递,请进行排查

请求的租户标识未传递,请进行排查

本章节,将介绍多租户的基础知识、以及怎样使用多租户的功能。

相关的视频教程:

#1. 多租户是什么?

多租户,简单来说是指一个业务系统,可以为多个组织服务,并且组织之间的数据是隔离的。

例如说,在服务上部署了一个 ruoyi-vue-pro (opens new window)系统,可以支持多个不同的公司使用。这里的一个公司就是一个租户,每个用户必然属于某个租户。因此,用户也只能看见自己租户下面的内容,其它租户的内容对他是不可见的。

#2. 数据隔离方案

多租户的数据隔离方案,可以分成分成三种:

  1. DATASOURCE 模式:独立数据库
  2. SCHEMA 模式:共享数据库,独立 Schema
  3. COLUMN 模式:共享数据库,共享 Schema,共享数据表

#2.1 DATASOURCE 模式

一个租户一个数据库,这种方案的用户数据隔离级别最高,安全性最好,但成本也高。

DATASOURCE 模式

  • 优点:为不同的租户提供独立的数据库,有助于简化数据模型的扩展设计,满足不同租户的独特需求;如果出现故障,恢复数据比较简单。
  • 缺点:增大了数据库的安装数量,随之带来维护成本和购置成本的增加。

#2.2 SCHEMA 模式

多个或所有租户共享数据库,但一个租户一个表。

SCHEMA 模式

  • 优点:为安全性要求较高的租户提供了一定程度的逻辑数据隔离,并不是完全隔离;每个数据库可以支持更多的租户数量。
  • 缺点:如果出现故障,数据恢复比较困难,因为恢复数据库将牵扯到其他租户的数据; 如果需要跨租户统计数据,存在一定困难。

#2.3 COLUMN 模式

共享数据库,共享数据架构。租户共享同一个数据库、同一个表,但在表中通过 tenant_id 字段区分租户的数据。这是共享程度最高、隔离级别最低的模式。

COLUMN 模式

  • 优点:维护和购置成本最低,允许每个数据库支持的租户数量最多。
  • 缺点:隔离级别最低,安全性最低,需要在设计开发时加大对安全的开发量;数据备份和恢复最困难,需要逐表逐条备份和还原。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/979758
推荐阅读
相关标签
  

闽ICP备14008679号