每个租户托管建议的数据库(高可扩展性)

问题描述 投票:0回答:1

我们目前正在生成一个带有每个租户逻辑数据库的Web应用程序。我们当前的数据库设置全部托管在一个具有一个实例免费SQL Express版本的VM上。

所有数据库都是在服务器端动态创建的,并在每次管理器注册时添加到同一个实例中。

但是,我预计在不久的将来我们可能会遇到高可扩展性的问题,考虑到新SQL版本的成本,与多个数据库的一个实例相关的性能问题,未来的开发和管理。

我正在考虑从Azure开启弹性池结构,因为我们现在没有很多客户端,但我真的不知道它在开始时是否有利于价格和可扩展性。

为了拥有超过100个客户端,用弹性池改变我的结构是否有益?

谢谢!

.net entity-framework-6 azure-sql-database multi-tenant azure-elastic-scale
1个回答
2
投票

弹性池非常适合具有特定利用模式的大量数据库。对于给定的数据库,此模式的特点是平均利用率低,利用率峰值相对较少。

您可以添加到池中的数据库越多,您的节省就越多。

但是,重要的是评估您的特定数据库集合是否可以从池中受益。您需要检查数据库的使用模式,并注意峰值DTU和理想时间。

池的价格是池eDTU的函数。虽然池的eDTU单价比单个数据库的DTU单价高1.5倍,但池eDTU可以由许多数据库共享,并且需要的eDTU总数更少。

如果单个数据库的性能级别的DTU总和超过池所需的eDT的1.5倍,则弹性池更具成本效益。有关可用尺寸,请参阅eDTU and storage limits for elastic pools and elastic databases

要确定最大同时峰值数据库的数量,我建议你仔细阅读这个 - Maximum number of concurrently peaking databases

© www.soinside.com 2019 - 2024. All rights reserved.