当前位置:首页 > 技术积累 > 正文内容

云平台多租户系统的设计方案

竹林之风5年前 (2019-08-24)技术积累4685

        多租户(Multi Tenancy)是指在一个云平台上,多个不同的客户共用相同的平台和架构但又相互独立并对各自的用户提供服务。多租户相同有4个特点:①共用平台和架构;②相互独立;③数据隔离;④对外表现为使用不同的子域名但页面形式一致;⑤由平台统一管理。在数据库和应用程序层面上,有如下3种解决方案:

(1)数据库物理隔离、应用程序物理隔离:各客户使用独立的数据库和应用程序。优点:各客户的数据和程序绝对隔离互不影响。缺点:①部署复杂,每新增一个客户就要重建一个新的数据库和应用程序,比较冗余且占用多余存储空间;②升级麻烦,每当数据库和应用程序需要升级时,得为每一个客户一一升级;③配置繁琐,得为每一个客户一一配置,如配置数据库、绑定域名等。适用:小量客户。

(2)数据库物理隔离、共用应用程序:各客户使用独立的数据库,但使用相同的应用程序。优点:①各客户的数据绝对隔离互不影响;②应用程序部署、升级和配置简单。缺点:①数据库部署复杂,每新增一个客户就要重建一个新的数据库;②数据库升级麻烦,每当数据库需要升级时,得为每一个客户一一升级;③数据库配置繁琐;④绑定泛域名需要程序根据子域名自动匹配对应的客户;⑤需要根据子域名自动确定访问哪个数据库。适用:中小量客户。

(3)共用数据库和应用程序:各客户使用相同的数据库和应用程序。优点:①各客户共用所有应用程序和数据库,只需部署一次、配置一次;②升级简单;③数据逻辑隔离。缺点:①程序中实现数据的逻辑隔离较繁琐;②绑定泛域名需要程序根据子域名自动匹配对应的客户。适用:大量客户。


扫描二维码推送至手机访问。

版权声明:本文由久爱编程网发布,如需转载请注明出处。

本文链接:https://www.9icode.com/index.php/post/39.html

分享给朋友:

相关文章

jQuery AJAX跨域在IE9及以下版本中失效问题

jQuery AJAX跨域在IE9及以下版本中失效问题

        使用jQuery AJAX在IE9及以下版本浏览器中提交HTTP跨域请求时,浏览器会报错且并不执行该操作,是因为IE9及以下版本默认不支持跨域请...

Java相关的一些名词

Java相关的一些名词

Java语言:一种程序设计语言,版本号从1.0到1.4,从1.5起版本号变更为5、6、……;JDK版本号、Java平台版本号类同。Java平台:1998年12月发布JDK 1.2后,Java从与平台无关的语言变成Java 2平台,分为三个版...

ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常问题解决

        ASP.NET中报“无法在已发送HTTP标头之后进行重定向”异常时,其中一个原因是:在已经重定向后又重定向。在ASP.NET中实现重定向有以下几...

从被扫描记录看网站安全应该注意的一些细节

从被扫描记录看网站安全应该注意的一些细节

1、尽可能地隐藏服务器真实IP,减少攻击目标。例如使用负载均衡、网关等作为门户,由负载均衡或网关转发到后端服务器。2、服务器必须开放的服务(除HTTP、HTTPS等为公众开放的服务外),尽可能改为其它较大的不常用的端口号,这样攻击者需要扫描...

ASP.NET Core网站报“An assembly specified in the application dependencies manifest was not found”异常解决

ASP.NET Core网站报“An assembly specified in the application dependencies manifest was not found”异常解决

        ASP.NET Core网站报“An assembly specified in the application dependencies ma...

ASP.NET MVC WebApi控制器方法使用async假死超时问题

ASP.NET MVC WebApi控制器方法使用async假死超时问题

        在一个ASP.NET MVC WebApi控制器方法中使用async标记为异步方法后,有时会假死超时。根本原因是同步方法和异步方法混合造成的死锁...

发表评论

访客

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