多租户解决方案的体系结构注意事项
在考虑多租户体系结构时,需要做出几个决策,以及需要考虑的元素。
在多租户体系结构中,可以在租户之间共享部分或全部资源。 此过程意味着多租户体系结构可以提供成本和运营效率。 但是,多租户引入了复杂性。 你需要问自己以下问题:
- 如何为特定解决方案定义 租户 是什么? 租户是否对应于客户、用户或团队或家庭等用户组?
- 如何部署基础结构以支持多租户,以及租户之间有多少隔离?
- 解决方案将提供哪些商业定价模型,以及定价模型如何影响多租户要求?
- 需要向租户提供哪种级别的服务级别,包括性能、复原能力、安全性和合规性要求(如数据驻留)?
- 你计划如何发展业务或解决方案? 它会扩展到预期的租户数吗?
- 你的任何租户是否有异常或特殊要求? 例如,你的最大客户是否需要比其他人更高的性能或更强的保证?
- 如何监视、管理、自动化、缩放和管理 Azure 环境,以及多租户如何影响管理策略?
- 解决方案的哪些组件处理租户载入和管理,以及这些组件的设计方式如何?
无论你的体系结构如何,你都有必要清楚地了解客户或租户的要求。 如果已向客户做出销售承诺,或者有合同义务或符合性要求,则需要知道在构建解决方案时需要满足哪些要求。 但同样,客户可能对工作原理或行为方式有隐式期望,这可能会影响设计多租户解决方案的方式。
例如,假设你正在构建一个向金融服务行业企业销售的多租户解决方案。 客户有非常严格的安全要求,他们需要提供解决方案使用的每个域名的完整列表,以便他们可以将其添加到防火墙的允许列表。 此要求会影响你使用的 Azure 服务以及租户之间必须提供的隔离级别。 他们还要求其解决方案具有最低级别的复原能力。 可能需要在整个解决方案中考虑许多类似的期望,无论是显式的还是隐式的。
在本部分中,我们概述了在规划多租户体系结构时应给出的一些注意事项、应引发的要求以及需要做出的一些权衡。
预期受众
本节中的文章特别适用于技术决策者,如首席技术官(CTO)和架构师以及产品经理。 受众还包括开发 SaaS 解决方案的独立软件供应商(ISV)和初创公司。 此外,任何使用多租户体系结构的人都应该熟悉这些原则和权衡。
后续步骤
考虑解决方案的不同 租赁模型 。