【问题标题】:Azure multi-tenant SAAS/PAAS?Azure 多租户 SAAS/PAAS?
【发布时间】:2020-06-08 03:57:59
【问题描述】:
我是 Azure 的新手,我的任务是确定将我们的本地 asp.net 核心 Web 应用程序带到 Azure 的正确方法,使其成为向客户提供的多租户产品。
到目前为止,根据我的研究,我似乎有以下选择
- 使我的 Web 应用程序成为多租户 SAAS 应用程序,每个租户进行数据分区
- 使我的 Web 应用程序成为受 Azure AD 保护的 PAAS 产品,可以使用 Azure Managed application 部署到客户订阅。
- 容器化我的解决方案(ACI/Docker 等)。
Q1:有什么叫做多租户PAAS的应用吗?我遇到的所有参考资料都是多租户 SAAS 应用程序。
Q2:我想知道我的方向是否正确,是否有任何书籍/参考资料/文档可以在这方面帮助我巩固理解。
非常感谢您对此事的任何帮助。
谢谢,
【问题讨论】:
标签:
azure
azure-active-directory
azure-web-app-service
azure-managed-app
【解决方案1】:
有什么叫多租户 PAAS 应用的吗?
对于多租户PAAS(Platform-as-a-Service)应用,可以这样理解:
每个应用程序在各自独立的空间中运行,同时仍共享计算、存储和网络资源,并提供安全域与应用程序相关数据和进程的完全分离。
我想知道我的方向是否正确,有没有
在这方面可以帮助我的书籍/参考资料/文档
巩固我的理解?
Azure 托管 ASP.NET Core Web 应用,微软官方提供以下解决方案:
应用服务 Web 应用
容器(几个选项)
虚拟机 (VM)
应用服务 Web 应用是大多数场景的推荐方法,包括基于容器的简单应用。对于微服务架构,请考虑基于容器的方法。如果您需要对运行应用程序的机器进行更多控制,请考虑使用 Azure 虚拟机。
详情请查看:here
希望能帮到你。
【解决方案2】:
取决于许多因素,其中一些最重要的因素是:
- 租户数量
- 负载分布在租户之间(您的租户负载分布是否大致相等,或者某些租户使用应用程序 10s,100s,... 比其他人更密集)
- 安全性和数据隔离(是否出于安全原因将租户分开,每个租户都有自己的环境(域、数据库、应用程序实例)
您最直接的出发点是使用应用服务和 cosmos db,因为它几乎可以无限扩展。
然后,如果/当你因为你的要求而碰壁时(如果你在上面的列表中有类似的东西),那么你就从那里开始。
这是一个笼统的答案,但它实际上取决于您的应用程序的性质和使用模式/要求。