当前位置:234百科 > 文化 > 正文内容

多租户架构指什么 多租户管理系统设计 架构

无天2023-03-03 16:30文化108

很多朋友对于多租户架构指什么和多租户管理系统设计 架构不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!

多租户模式(Multitenancy)

人懒:英语看起来费脑子,先机器翻一下留个备份。

1. Multitenancy is a reference to the mode of operation of software where multiple independent instances of one or multiple applications operate in a shared environment. The instances (tenants) are logically isolated, but physically integrated. The degree of logical isolation must be complete, but the degree of physical integration will vary. The more physical integration, the harder it is to preserve the logical isolation. The tenants (application instances) can be representations of organizations that obtained access to the multitenant application (this is the scenario of an ISV offering services of an application to multiple customer organizations). The tenants may also be multiple applications competing for shared underlying resources (this is the scenario of a private or public cloud where multiple applications are offered in a common cloud environment).

多租户 是对软件操作模式的引用,其中一个或多个应用程序的多个独立实例在共享环境中运行。 实例(租户)在逻辑上是隔离的,但在物理上是集成的。 逻辑隔离度必须完整,但是物理集成度将有所不同。 物理集成越多,保持逻辑隔离就越困难。 租户(应用程序实例)可以是获得对多租户应用程序的访问权的组织的表示(这是ISV向多个客户组织提供应用程序服务的场景)。 租户也可能是竞争共享基础资源的多个应用程序(这是私有云或公共云的情况,其中在公共云环境中提供了多个应用程序)。

定义来自 这里

正确支持多租户的供应商必须在其CMP *的所有级别上实施它。一些例子:

供应商的观点是,大多数使用CMP构建私有云的客户不需要这种复杂性。对于许多组织来说,在云计算开始之初确实是这样。但是,在我的交互中,所有构建本地云的大型组织都将服务(或计划服务)具有不同安全级别和专用IT基础架构的不同业务部门和部门。另外,许多大型组织都在考虑将其最初私有的云暴露给外部实体(例如,业务合作伙伴,联合机构)的想法。

换句话说,除了公共云用例之外,在某些情况下,实施不当的多租户会破坏交易。

如果您是最终用户组织,则应真正评估选择的CMP中多租户的健壮性。

如果您是供应商,则应真正预期成熟客户的需求,并不要假装多租户仅仅是网络隔离,组层次结构和RBAC。

*如果您对Gartner建议用于企业级CMP的管理功能和功能感到好奇,建议您阅读我们的研究报告:《云管理平台的评估标准》

原文地址在 这里

什么是多租户

SaaS现在已成为一股潮流,它将颠覆传统的软件交付方式

其实从架构层面来分析,SaaS区别于传统技术的重要差别就是Multi-Tenant模式。多租户就是说多个租户共用一个实例,租户的数据既有隔离又有共享,说到底就是如何解决数据存储的问题。

现在SaaS Multi-Tenant在数据存储上存在三种主要的方案,分别是—

方案一:独立数据库

这是第一种方案,即一个Tenant一个Database(见图3-14),这种方案的用户数据隔离级别最高,安全性最好,但成本也高。

优点:

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

缺点:

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

这种方案与传统的一个客户、一套数据、一套部署类似,差别只在于软件统一部署在运营商那里。如果面对的是银行、医院等需要非常高数据隔离级别的租户,可以选择这种模式,提高租用的定价。如果定价较低,产品走低价路线,这种方案一般对运营商来说是无法承受的。

方案二:共享数据库,隔离数据架构.即多个或所有租户共享Database,但一个Tenant一个Schema。

优点:

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

缺点:

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

方案三:共享数据库,共享数据架构.即租户共享同一个Database、同一个Schema,但在表中通过TenantID区分租户的数据。这是共享程度最高、隔离级别最低的模式。

优点:

三种方案比较,第三种方案的维护和购置成本最低,允许每个数据库支持的租户数量最多。

缺点:

隔离级别最低,安全性最低,需要在设计开发时加大对安全的开发量;数据备份和恢复最困难,需要逐表逐条备份和还原。如果希望以最少的服务器为最多的租户提供服务,并且租户接受以牺牲隔离级别换取降低成本,这种方案最适合。

CRM系统未来将以中低端市场为主,所以采用第三种方案,只要做好数据隔离比较好了。千万不可掉以轻心,SaaS下的安全性设计很重要。一般常见的安全性设计分为两类:系统级和程序级。

系统级:

使用HTTPS协议以SSL(Security Socket Layer)交换数据,增强通信安全;通过数字签名防止传输过程篡改;对用户身份识别的UserToken使用DES算法数据加密;业务数据定时自动备份。

程序级:

完整的权限配置,包括功能权限和数据权限;客户端输入校验,防止JS攻击、XSS攻击、SQL注入等;辅助安全设计,比如密码控件、图片验证码、手机确认码等。

什么是多租户模式?

低代码平台多租户模式可为集团下属各个机构开通企业域提供多租户服务,每个租户之间可以设定上下级关系,同时企业域可创建多级管理员,允许次级管理员独立维护子公司或子部门用户情况,对集团型企业大大缓解组织用户管理工作量压力。

好了,文章到此结束,希望可以帮助到大家。

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。