|单租户与多租户的SaaS架构有何不同?

随着云服务持续在各个领域帮助我们存储和管理各类数据 , 我们需要根据实际的应用场景选择正确的SaaS框架 。通常 , 我们有单租户架构与多租户架构两种选择 。
从字面上理解 , 单租户和多租户架构之间的主要区别是:单租户架构通常是在独占式的SaaS(软件即服务)云服务或交付模型中使用 。而多租户架构则是多个用户同时分享软件应用的相关服务 。本文将和您讨论两者的具体差异 , 包括每种架构是如何工作的 , 哪种模型方案可以满足何种场景需求 , 以及构建SaaS应用程序的三种方法 。
单租户架构的特点
让我们以房地产为例 , 来看看单租户架构系统的工作原理 。
|单租户与多租户的SaaS架构有何不同?
文章图片

文章图片

如上图所示 , 我们将SaaS服务器环境视为一个街区 , 想象每个用户都有自己的办公楼 , 所有这些建筑物都位于同一条街上 。那么每个用户都在其建筑物内运行自己的业务 , 每个建筑物在大街上排成一行 。
可见 , 单租户架构具有独享性 , 因此每个SaaS服务器仅允许一个实例 。服务提供商往往会有针对性地为每个用户构建单个软件 。在完成本地用户端的安装后 , 用户可以自行更改UI(用户界面) , 以满足特定的环境需求 。虽然每个用户都有各自的数据库和应用实例 , 但是他们是不可以访问到基础代码的 。
值得一提的是 , 单租户架构不但适用于本地应用 , 也适合云计算环境 , 包括第三方云平台和私有云服务等 。因此 , 如果企业希望从精细化管理的业务环境 , 过渡到云端自托管的对等环境 , 那么采用单租户架构会比较适合 。
【|单租户与多租户的SaaS架构有何不同?】多租户架构的特点
仿造上述房地产的示例 , 我们可以将多租户架构描述为办公室环境 , 所有办公室(用户端)都位于同一个建筑物内 。每个用户都可以在大型SaaS的环境中拥有自己的工作空间 。
|单租户与多租户的SaaS架构有何不同?
文章图片

文章图片

如上图所示 , 在多租户架构中 , 每个软件应用程序实例都是为一个以上的租户(用户端)提供服务的 。所有用户端将共享相同的数据库和应用信息 。因此 , 多租户的SaaS架构往往是基于B2B生态系统的 , 两到多个用户可以同时在同一个区域内进行协作 。
对于那些初创型企业来说 , 它们希望拥有更舒适的启动体验、以及较低硬件配置 。那么多租户架构就是一个绝佳的解决方案 。作为企业在SaaS环境中普遍采取的标准 , 多租户架构允许其用户在软件内部进行各种自定义的更改 。
两种架构的各自优点
总体而言 , 单租户比其相应的多租户要昂贵得多 。而多租户架构具有非常高效的资源使用率 , 以及更大的计算力 。同时 , 多租户架构的维护成本要便宜得多 。安全性和可靠性:通过实施单租户架构 , 用户的数据会与其他最终用户相隔离 。这意味着没有人可以访问他人的敏感数据 。用户可以放心地持续使用自己的服务实例和数据 。总体成本:多租户架构提供了诸如:数据库、服务、应用程序、以及资源层面上的交换 , 而且其成本低于单租户架构 。多租户架构的扩展对于用户来说影响最小 。新用户在无需支付昂贵费用的情况下 , 可以享受到既有用户的各项服务 , 包括:最新的软件版本等 。因此 , 区别于独享式的单租户架构 , 多租户架构的维护成本与SaaS的订阅数相关联 。更大的计算力:多租户架构能够使整个组织保留在同一基础架构和数据中心内 。据此 , 用户不必考虑增加服务器、及其容量的问题 。自托管式的环境迁移:而当用户希望从某个SaaS环境转到另一个自托管环境时 , 由于单租户架构将所有信息存储在同一个空间里 , 因此用户可以安全地传输数据 , 并将其导入新的环境 。


推荐阅读