多租户mysql架构_团队开发框架实战—多租户架构

2023-11-18

1 对多租户的理解

多租户定义:多租户技术或称多重租赁技术,简称SaaS,是一种软件架构技术,是实现如何在多用户环境下(此处的多用户一般是面向企业用户)共用相同的系统或程序组件,并且可确保各用户间数据的隔离性。简单讲:在一台服务器上运行单个应用实例,它为多个租户(客户)提供服务。从定义中我们可以理解:多租户是一种架构,目的是为了让多用户环境下使用同一套程序,且保证用户间数据隔离。那么重点就很浅显易懂了,多租户的重点就是同一套程序下实现多用户数据的隔离。对于实现方式,我们下面会讨论到。

在了解详细一点:在一个多租户的结构下,应用都是运行在同样的或者是一组服务器下,这种结构被称为“单实例”架构(Single Instance),单实例多租户。多个租户的数据是保存在相同位置,依靠对数据库分区来实现隔离操作。既然用户都在运行相同的应用实例,服务运行在服务供应商的服务器上,用户无法去进行定制化的操作,所以这对于对该产品有特殊需要定制化的客户就无法适用,所以多租户适合通用类需求的客户。那么缺点来了,多租户下无法实现用户的定制化操作。

在翻阅多租户的资料时,还有一个名词与之相对应,那就是单租户SaaS架构(也被称作多实例架构(Multiple Instance))。单租户架构与多租户的区别在于,单租户是为每个客户单独创建各自的软件应用和支撑环境。单租户SaaS被广泛引用在客户需要支持定制化的应用场合,而这种定制或者是因为地域,抑或是他们需要更高的安全控制。通过单租户的模式,每个客户都有一份分别放在独立的服务器上的数据库和操作系统,或者使用强的安全措施进行隔离的虚拟网络环境中。因为本篇主要是讨论多租户,所以单租户的相关知识就简单了解一下,不做过多的阐述了。

2 多租户数据隔离的三种方案

在当下云计算时代,多租户技术在共用的数据中心以单一系统架构与服务提供多数客户端相同甚至可定制化的服务,并且仍可以保障客户的数据隔离。目前各种各样的云计算服务就是这类技术范畴,例如阿里云数据库服务(RDS)、阿里云服务器等等。

多租户在数据存储上存在三种主要的方案,分别是:

2.1 独立数据库

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

优点:为不同的租户提供独立的数据库,有助于简化数据模型的扩展设计,满足不同租户的独特需求;如果出现故障,恢复数据比较简单。

缺点: 增多了数据库的安装数量,随之带来维护成本和购置成本的增加。

这种方案与传统的一个客户、一套数据、一套部署类似,差别只在于软件统一部署在运营商那里。如果面对的是

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

多租户mysql架构_团队开发框架实战—多租户架构 的相关文章

随机推荐

  • Mysql 报错注入方式总结

    floor 注入语句 id 1 and select 1 from select count concat user floor rand 0 2 x from information schema tables group by x a
  • 解密aes加密的m3u8片段的方法

    现在一些m3u8是有aes加密的 解密方法也简单 只要找到m3u8指定的密码文件就行了 一般都在 EXT X KEY METHOD AES 128 URI xxx 这里 下面的代码显示了在下载ts片段和密码文件后如何解密 假设已下载的m3u
  • Qt实战-聊天界面案例

    Qt实战 聊天界面案例 本项目模仿某平台 实现类似的聊天案例 喜欢的朋友可以在此基础上进行添加功能 1 原理 使用udp通信接收本地服务器的消息 ui gt setupUi this 初始化操作 udpSocket new QUdpSock
  • C语言:结构体中(.)和(->)的区别

    首先 要了解 a b 等价于 a gt b 概念上 一般情况下用 只需要声明一个结构体 格式是 结构体类型名 结构体名 然后用结构体名加 加域名就可以引用域 了 因为自动分配了结构体的内存 如同 int a 一样 而用 gt 则要声明一个结
  • 会议通知

    全国高校Python数据分析与实训课程 高级研修班 通 知 各高校教务处 各相关院系负责人 依据 教育部高等学校教学指导委员会章程 规定 教育部高等学校教学指导委员会的任务之一是 组织师资培训 沟通信息 交流教学建设和教学改革经验 宣传推广
  • 2022 Java面试题

    Java面向对象有哪些特征 如何应用 面向对象编程是利用类和对象编程的一种思想 万物可归类 类是对于世界事物的高度抽象 不同的事物之间有不同的关系 一个类自身与外界的封装关系 一个父类和子类的继承关系 一个类和多个类的多态关系 万物皆对象
  • 基于MATLAB GUI的LSB语音信号数字水印

    基于MATLAB GUI的LSB语音信号数字水印 数字水印是一种在数字媒体中嵌入信息的技术 它可以用于版权保护 身份验证以及数据完整性验证等应用 在本文中 我们将介绍如何使用MATLAB GUI和最低有效位 Least Significan
  • Vue2.0知识点

    Vue2 0指令 v text指令 内容渲染指令 它会覆盖元素内部原有的内容 语法 插值表达式 专门用来解决v text会覆盖默认文本内容的问题 v text和插值表达式只能渲染纯文本内容 插值表达式不能用到属性节点 v html指令 可以
  • FFmpeg H264增加SEI

    先看使用场景 https blog csdn net lsheevyfg article details 80951415 https www jianshu com p 4d9120dfcd69 参考文章 https blog csdn
  • 【Python基础】Jupyter Notebook最常用的五大配置技巧

    说到Jupyter Notebook 以下简称Jupyter 想必很多人都不陌生 这是一款神奇的web应用 权且可以把它当作python超级笔记本 当然它还支持R Julia Scala Js等几十种语言 在Jupyter上 可以使用pyt
  • Spring Security OAuth2.0(四)-----OAuth2+JWT

    传统的通过 session 来记录用户认证信息的方式我们可以理解为这是一种有状态登录 而 JWT 则代表了一种无状态登录 无状态登录天然的具备单点登录能力 1 无状态登录 1 1 什么是有状态 有状态服务 即服务端需要记录每次会话的客户端信
  • Python中__str__的用法

    str 和 repr 如果要把一个类的实例变成 str 就需要实现特殊方法 str 不使用 str print打印出来是个对象 使用了就把对象变成字符串 class Person object def init self name gend
  • 蓝桥杯模块练习6-AD

    main c include
  • ag-grid Column API(机器翻译)

    Column API 一些API方法采用colKey类型为的列关键字 名为 Column string 这意味着您可以传递一个Column对象 通过调用其他方法之一接收到的对象 也可以传递Column ID 即string 列ID是列定义的
  • 【毕业设计】深度学习卫星遥感图像检测与识别系统(目标检测)

    文章目录 0 前言 1 课题背景 2 实现效果 3 Yolov5算法 4 数据处理和训练 5 最后 0 前言 Hi 大家好 这里是丹成学长的毕设系列文章 对毕设有任何疑问都可以问学长哦 这两年开始 各个学校对毕设的要求越来越高 难度也越来越
  • 远程控制,从个人便捷走向企业安全

    根据风险基础安全 Risk Based Security 的数据显示 2020年全球数据泄漏达到360亿条 创历史新高 对比传统的网络安全威胁 数据安全威胁更加多样化 80 的安全风险来自于内部人员或合作伙伴 威胁形式也更集中在账号体系薄弱
  • mybatis中association和collection的column传入多个参数问题

    mybatis中association和collection的column传入多个参数值 项目中在使用association和collection实现一对一和一对多关系时需要对关系中结果集进行筛选 如果使用懒加载模式 即联合使用select
  • mysql mariadb不能启动原因_centOS7 (64) MariaDB无法启动 跪求解决方法

    在CentOS7中mysql被 MariaDB所代替 幸得 贵在坚持 提点 顺利下载 MariaDB等相关软件但是安装完毕后 mariadb还是无法正常启动 root localhost service mariadb start Redi
  • mysql怎么替换部分字符串

    mysql替换部分字符串的方法 1 使用REPLACE 函数 语法 REPLACE 字符串 查找值 替换值 2 使用INSERT 函数 语法 INSERT 字符串 替换开始位置 要替换的字符数 替换值 mysql替换部分字符串 1 使用RE
  • 多租户mysql架构_团队开发框架实战—多租户架构

    1 对多租户的理解 多租户定义 多租户技术或称多重租赁技术 简称SaaS 是一种软件架构技术 是实现如何在多用户环境下 此处的多用户一般是面向企业用户 共用相同的系统或程序组件 并且可确保各用户间数据的隔离性 简单讲 在一台服务器上运行单个