0

我是 Azure 的新手,我的任务是确定将我们的本地 asp.net 核心 Web 应用程序带到 Azure 的正确方法,以便它成为向客户提供的多租户产品。

到目前为止,根据我的研究,我似乎有以下选择

  1. 使我的 Web 应用程序成为具有每个租户数据分区的多租户 SAAS 应用程序
  2. 使我的 Web 应用程序成为受 Azure AD 保护的 PAAS 产品,可以使用Azure 托管应用程序部署到客户订阅。
  3. 将我的解决方案容器化(ACI/Dockers 等)。

Q1:有什么叫多租户 PAAS 应用的吗?我遇到的所有参考资料都是多租户 SAAS 应用程序。

Q2:我想知道我的方向是否正确,是否有任何书籍/参考资料/文档可以在这方面帮助我巩固我的理解。

非常感谢您对此事的任何帮助。

谢谢,

4

2 回答 2

1

有没有所谓的多租户 PAAS 应用程序?

对于多租户 PAAS(Platform-as-a-Service)应用,可以这样理解:

每个应用程序在各自独立的空间中运行,同时仍共享计算、存储和网络资源,并提供安全域与应用程序相关数据和流程的完全分离。

我想知道我的方向是否正确,是否有任何书籍/参考资料/文档可以在这方面帮助我巩固我的理解?

Azure 托管 ASP.NET Core Web 应用,微软官方提供了以下解决方案:

  • 应用服务 Web 应用

  • 容器(几个选项)

  • 虚拟机 (VM)

应用服务 Web 应用是大多数方案的推荐方法,包括基于容器的简单应用。对于微服务架构,请考虑基于容器的方法。如果您需要对运行应用程序的机器进行更多控制,请考虑使用 Azure 虚拟机。

详细信息请查看:这里

希望能帮到你。

于 2020-06-08T08:05:48.033 回答
1

取决于许多因素,其中一些最重要的因素是:

  1. 租户数量
  2. 负载分布在租户上(您的租户负载分布是否大致相等,或者某些租户使用应用程序 10s,100s,......比其他人更密集)
  3. 安全性和数据隔离(是否有安全原因让租户通过各自拥有自己的环境(域、数据库、应用程序实例)来分隔?

您最直接的出发点是使用应用服务和 cosmos db,因为它几乎可以无限扩展。然后,如果/当你因为你的要求而碰壁时(如果你在上面的列表中有类似的东西),那么你就从那里开始。

这是一个普遍的答案,但它实际上取决于您的应用程序的性质和使用模式/要求。

于 2020-06-08T09:50:03.960 回答