Membership.ValidateUser与数据库聊天

时间:2012-08-20 15:20:21

标签: asp.net asp.net-mvc entity-framework asp.net-membership membership-provider

不确定我是否可能做错了什么,或者我是否应该抛弃ASP.NET SQL成员资格提供程序,并且可能会自行推出。我正在努力通过减少数据库调用次数来优化我们的Web应用程序/服务性能。为此,我已经连接了实体框架分析器(EFProf),这很棒。

看起来从一次调用Membership.ValidateUser(用户名,密码),我得到8次调用数据库。 4选择,4更新。似乎完全相同的选择和更新序列连续重复两次。它根据用户名选择用户数据,再根据userId选择,然后更新上次登录和最后活动日期(最后两个作为两个单独的更新语句发送)。

当我们添加我们在Azure上运行的事实时,这变得有点大,因此数据库不在同一台机器上或者在Web服务器旁边,所以每个db调用需要3-10个ms平均。

对此有何想法?之前有人注意到这种行为吗似乎这可能只是MSFT需要优化的东西,但我想无论如何都会问。

感谢。

1 个答案:

答案 0 :(得分:1)

Azure不支持SqlMembershipProvider和SqlRoleProvider,建议迁移到universal providers。我不确定这是否是它如此繁琐的原因,但新的提供商内置了Azure支持。

相关问题