【发布时间】:2017-06-30 16:26:22
【问题描述】:
我正在使用 ASP.NET MVC 5 标识。我首先允许 EF 代码为我创建数据库表。 PasswordHash、SecurityStamp 和 PhoneNumber 都是 nvarchar(MAX) - 但是当我查看它们的内容时,它们要短得多。
对于我的主要 DAL,我使用的是 Dapper - 尽管我让 EF 处理身份。
出于数据库性能的原因,我是否可以缩短这些 MAX 字段,同时保证 Identity 仍然正常运行 - 如果可以,长度是多少?
(我假设我可以使用 PhoneNumber 做任何我喜欢的事情,因为我可以控制该字段的内容 - 但我不太确定其他 2 个)。
我在网上找不到任何提及此事的内容。
【问题讨论】:
-
性能原因?你真的认为会有帮助吗?任何性能问题的必填链接:ericlippert.com/2012/12/17/performance-rant
-
拥有大量 MAX 字段并不是一个好习惯,而且这里似乎真的没有充分的理由。但是,嘿,当你使用 EF 时,你无论如何都会被淹没;)性能不仅仅是“服务器可以接受它” - 它是“这可以更具响应性”,更好的性能是从扩展到响应的许多方面的胜利磁盘使用时间。
-
您是对的,但您不太可能拥有数百万用户,因此这不是真正的问题。
-
另外,也许我应该更多地表述这一点,而不是具体确定的性能;我认为你正在提出的观点。
标签: asp.net-mvc asp.net-mvc-5 asp.net-identity asp.net-identity-2