使用ASP.NET的SqlMembershipProvider进行分片?

时间:2009-01-30 07:08:21

标签: asp.net-mvc asp.net-membership sqlmembershipprovider sharding

我正在考虑在ASP.NET MVC中编写博客托管应用程序。我是.NET的新手,但我在LAMP世界中有足够的能力。我的问题涉及用户数据的水平扩展。

每个拥有博客的用户都会在数据库中拥有6个表。我想计划横向扩展,以便20%的用户可以在一个数据库服务器上,20%在另一个数据库服务器上,等等。在LAMP世界中,我有一个“字典”表,我首先查询找出用户所在的数据库服务器。然后,应用程序将只与该特定数据库服务器通信。

我没有看到如何轻松地对SqlMembershipProvider使用的数据库进行分片。有什么提示吗?

1 个答案:

答案 0 :(得分:2)

您可以设置asp.net成员资格,以便在与您网站其余部分不同的数据库上运行。这将允许您将所有用户信息和可能的其他相关信息存储在一个数据库中,同时您可以在所需的数据库中分隔其余信息。

这不会拆分成员资格数据库,但它允许您将站点的其余部分拆分为多个数据库。会员数据库不太可能成为用户最难打击的数据库。