文章目录

  • 一、什么是多租户
  • 二、数据隔离有三种方案
  • Schema的结构:

参考博文,点击这里

一、什么是多租户

多租户技术或称多重租赁技术,简称多租户。是一种软件架构技术,是实现如何在多用户环境下(此处的多用户一般是面向企业用户)共用相同的系统或程序组件,并且可确保各用户间数据的隔离性。

简单讲:在一台服务器上运行单个应用实例,它为多个租户(客户)提供服务。从定义中我们可以理解:多租户是一种架构,目的是为了让多用户环境下使用同一套程序,且保证用户间数据隔离。那么重点就很浅显易懂了,多租户的重点就是同一套程序下实现多用户数据的隔离。SaaS应用基于此实现。

二、数据隔离有三种方案

  1. 独立数据库:简单来说就是一个租户使用一个数据库,这种数据隔离级别最高,安全性最好,但是提高成本。
  2. 共享数据库、隔离数据架构:多租户使用同一个数据库,但是每个租户对应一个Schema(数据库user)。
  3. 共享数据库、共享数据架构:使用同一个数据库,同一个Schema,但是在表中增加了租户ID的字段,这种共享数据程度最高,隔离级别最低。
    这里采用方案三,即共享数据库,共享数据架构,因为这种方案服务器成本最低,但是提高了开发成本。

Schema的结构:

oracle数据库:在oracle中一个数据库可以具有多个用户,那么一个用户一般对应一个Schema,表都是建立在Schema中的,(可以简单的理解:在oracle中一个用户一套数据库表)

mysql数据库:mysql数据中的schema比较特殊,并不是数据库的下一级,而是等同于数据库。比如执行create schema test 和执行create database test效果是一模一样的

共享数据库、独立 Schema:即多个或所有的租户使用同一个数据库服务(如常见的ORACLE或MYSQL数据库),但是每个租户一个Schema。

优点: 为安全性要求较高的租户提供了一定程度的逻辑数据隔离,并不是完全隔离;每个数据库可支持更多的租户数量。

缺点: 如果出现故障,数据恢复比较困难,因为恢复数据库将牵涉到其他租户的数据; 如果需要跨租户统计数据,存在一定困难。

这种方案是方案一的变种。只需要安装一份数据库服务,通过不同的Schema对不同租户的数据进行隔离。由于数据库服务是共享的,所以成本相对低廉。

MyBatis-Plus之多租户架构(Multi-tenancy)——SAAS相关推荐

  1. Pulsar官方文档翻译-概念和架构-多租户(Multi Tenancy)

    官网原文标题<Multi Tenancy> 翻译时间:2018-10-28 官网原文地址:http://pulsar.apache.org/docs/en/concepts-multi-t ...

  2. java multi tenancy_MybatisPlus 多租户架构(Multi-tenancy)实现详解

    在进行多租户架构(Multi-tenancy)实现之前,先了解一下相关的定义吧: 什么是多租户 多租户技术或称多重租赁技术,简称SaaS,是一种软件架构技术,是实现如何在多用户环境下(此处的多用户一般 ...

  3. Mybatis Plus 多租户架构(Multi-tenancy)实现

    点击蓝色"架构文摘"关注我哟 加个"星标",每天上午 09:25,干货推送! 作者:吴汶泽 来源:https://segmentfault.com/a/1190 ...

  4. Spring Boot集成Mybatis-Plus多租户架构实战

    目前公司产品就是对外企业服务,入职后了解到SaaS模式和私有部署,当我第一次听到SaaS时,我不是很理解.经过查阅资料,以及在后续研发功能时,不断的加深了对多租户的理解. 那么接下来让我们问自己几个问 ...

  5. 基于Mybatis-Plus的多租户架构下的数据隔离解决方案

    目录 一.多租户架构 方案1:数据分区隔离(Partitioned (discriminator) data) 方案2:数据库实例隔离(Separate database) 方案3:Schema隔离( ...

  6. MybatisPlus 多租户架构(Multi-tenancy)实现

    在进行多租户架构(Multi-tenancy)实现之前,先了解一下相关的定义吧: 什么是多租户 多租户技术或称多重租赁技术,简称SaaS,是一种软件架构技术,是实现如何在多用户环境下(此处的多用户一般 ...

  7. 多租户saas 架构_实战复盘:toB产品的多租户架构设计

    今日Talker:杜松2021 来源:产品微言(ID:wuyuweiyan) 编辑:yun toB产品,面临着更为复杂的跨越业务.跨越组织的复杂性和多变性,"定制化"需求使得很多产 ...

  8. 直播丨探究Oracle多租户架构

    简介 Oracle在12c中引入了一个重要的新特性:多租户架构,而且在20c中也不复存在传统的non-CDB架构了.在此次分享中会对比传统non-CDB架构与CDB架构,并讲解CDB体系原理.介绍容器 ...

  9. Force.com 多租户架构

    本文参考自官方文档. 多租户架构 作为云计算平台的先驱,Salesforce最大的特点是"软件即服务"(Software as a Service,Saas).实现这种技术的基础便 ...

  10. 基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构zhen项目

    原项目链接:https://github.com/shuzheng/zheng 目前看过做完整的项目,大家一起学习一下,详情请点击原项目链接的地址 前言 zheng项目创建于2016年10月4日,正在 ...

最新文章

  1. HotSpot虚拟机对象的创建过程
  2. 偏见方差的权衡(Bias Variance Tradeoff)
  3. 5 多数据save_《Netlogo多主体建模入门》笔记 7
  4. 浮小麦升浮之气的本质
  5. 阿里巴巴后台的使用体验
  6. 匿名内部类----java
  7. Qt工作笔记-在Graphics上写文本(QGraphicsSimpleTextItem与QGraphicsTextItem的基本使用)
  8. azure多功能成像好用吗_了解Azure持久功能
  9. Flink WriteRedis
  10. VB6中SendKeys的基本应用
  11. cp、mv、rm、find、mkdir
  12. 【JY】YJK前处理参数详解及常见问题分析(六):地震信息
  13. JAVAWEB学习总结
  14. WinCE 5.0下的鼠标键盘驱动分析
  15. STM32-TM1640-点数码管计数
  16. xio you c语言程序设计入门——基本数据类型
  17. 【考试记录】阿里云大学Apsara Clouder云安全专项技能认证:云平台使用安全
  18. 生物信息学linux安装,构建生物信息学环境-1(Win10 Linux子系统的安装)
  19. 服务器被黑客用来挖矿?怎么办?
  20. 约瑟夫环 有15个人围成一圈,按顺序淘汰

热门文章

  1. BGP Confederation(BGP联邦)
  2. word如何批量更改公式字体
  3. Add couter , msn qq online status
  4. 磁盘管理之 raid 文件系统 分区
  5. 还在找怎么修复老照片?火爆全网的老照片修复技术方法其实很简单
  6. 使用Python读取raw格式图像并显示
  7. 最全的的初中数学公式大全
  8. Airtest自动化测试——批量执行脚本(实测)
  9. Jupyter Notebook切换conda虚拟环境
  10. 《人人都能玩赚ChatGPT》:一份简明易懂的 ChatGPT 技术指南