Service Fabric 多租户
Service Fabric multi-tenant
我们计划将 Azure Service Fabric 用于面向数据的多租户应用程序。通常有 100 多个客户,每个客户有 5 - 100 个用户。
查看文档后,我得出结论,最好的方法是为每个客户使用一个应用程序实例,而不是尝试使用配置文件来实现多租户。
这是最好的方法吗?
每个客户的应用程序实例是在单个集群上处理 multi-tenant 情况的好方法,是的。现在有 Service Fabric 应用程序可以执行此操作(Azure DB 是一个著名的应用程序)。
以下是您通过这种方法获得的一些结果:
- 每个应用程序实例都有自己的进程,这意味着每个租户都有 process-level 隔离。
- 每个应用程序实例都由一个或多个服务组成,这意味着您可以为应用程序使用 "microservices" 架构风格。
- 可以使用唯一参数创建每个应用程序实例,因此您可以为每个租户进行不同的设置。例如,您可以通过为其应用程序实例中的服务使用更高的副本集大小设置来为某些租户提供更高的可用性,或者您可以通过为其应用程序实例中的服务使用更高的分区计数设置来提供更高的数据容量.
这些对于 data-oriented multi-tenant 情况通常是好事,但它是否是 最佳 方式当然取决于您的具体要求。
我们计划将 Azure Service Fabric 用于面向数据的多租户应用程序。通常有 100 多个客户,每个客户有 5 - 100 个用户。
查看文档后,我得出结论,最好的方法是为每个客户使用一个应用程序实例,而不是尝试使用配置文件来实现多租户。
这是最好的方法吗?
每个客户的应用程序实例是在单个集群上处理 multi-tenant 情况的好方法,是的。现在有 Service Fabric 应用程序可以执行此操作(Azure DB 是一个著名的应用程序)。
以下是您通过这种方法获得的一些结果:
- 每个应用程序实例都有自己的进程,这意味着每个租户都有 process-level 隔离。
- 每个应用程序实例都由一个或多个服务组成,这意味着您可以为应用程序使用 "microservices" 架构风格。
- 可以使用唯一参数创建每个应用程序实例,因此您可以为每个租户进行不同的设置。例如,您可以通过为其应用程序实例中的服务使用更高的副本集大小设置来为某些租户提供更高的可用性,或者您可以通过为其应用程序实例中的服务使用更高的分区计数设置来提供更高的数据容量.
这些对于 data-oriented multi-tenant 情况通常是好事,但它是否是 最佳 方式当然取决于您的具体要求。