实现saas多租户方案比较

看到一篇比较多租户数据隔离方案的文章,总结挺不错。其实大部分内容在我前几年写的文章都有。

文章翻译自:

https://blog.arkency.com/comparison-of-approaches-to-multitenancy-in-rails-apps/

 多租户意味着同一个应用上有不用的用户隔离。这是非常典型的saas模型。你可以用不同的隔离级别来实现多租户。

1. 行级别: 在每个数据库表里添加tenat_id字段,然后在每个查询语句也添加相应的tenant_id

2. schema 级别: 每个租户有在同一个数据库内自己独立命名空间。 可以容易使用 PostgreSQL schemas 来实现. 后续会介绍使用Mysql如何实现。 

3. 数据库级别:每个租户创建独立的数据库。 非常少用到。

下面是比较这几种实现方式的优缺点:

 

  行级别 schema级别 db级别
租户创建时间 ⚡️ 新增一条记录
版权声明:本文为codemind原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/codemind/p/13081336.html