问题描述
我们计划将Azure Service Fabric用于面向数据的多租户应用程序.通常有100多个客户,每个客户有5-100个用户.
We are planning to use Azure Service Fabric for a data-oriented multi-tenant application. Typically 100+ customers each with 5 - 100 users.
通过查看文档,我得出结论,最好的方法是为每个客户使用一个Application实例,而不是尝试使用Profiles来实现多租户.
Looking at the documentation, I concluded that the best approach is to use an Application instance for each customer, rather than trying to use Profiles to achieve multi-tenancy.
这是最好的方式吗?
推荐答案
每个客户的应用程序实例是在单个集群上处理多租户情况的好方法,是的.今天有一些Service Fabric应用程序可以做到这一点(Azure DB是一个值得注意的应用程序).
An application instance for each customer is a good way to handle multi-tenant situations on a single cluster, yes. There are Service Fabric applications that do this today (Azure DB is a notable one).
通过这种方法,您可以得到一些好处:
Here are some things you get with this approach:
- 每个应用程序实例都有其自己的进程,这意味着每个租户都具有进程级别的隔离.
- 每个应用程序实例由一个或多个服务组成,这意味着您可以为该应用程序使用微服务"体系结构样式.
- 可以使用唯一的参数创建每个应用程序实例,因此您可以为每个租户进行各种设置.例如,您可以执行以下操作:为特定租户的应用程序实例中的服务使用更高的副本集大小设置,或者为它们的应用程序实例中的服务使用更高的分区计数设置,以提供更高的数据容量.
这些通常对于面向数据的多租户情况来说是件好事,但是它的最好方式当然取决于您的特定要求.
These are generally good things for data-oriented multi-tenant situations but whether or not its the best way to go of course depends on your specific requirements.
这篇关于服务结构多租户的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!