c# - SignInManager.PasswordSignIn 在第一次尝试时很慢
问题描述
使用 Azure 网站(标准层)和网站加载正常(设置为始终打开)。站点/代码经过优化和预编译。
第一次调用 SignInManager.PasswordSignInAsync 很慢(大约 2 到 5 秒)。
注销然后登录,几乎是即时的。
等待大约几个小时,然后变慢(然后变快)。
行为类似于进入睡眠状态或不再加载到内存中的事物。
目前正在测试中,因此没有其他人登录,但网站(实时)不会在一夜之间忙碌,因此这会影响当天的“第一个”用户。
代码是:
SignInStatus result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: false);
与 SignInManager.PasswordSignIn相同/相似的问题太慢
解决方案
如果有人仍然有这个问题,我通过向 AspNetUsers 表添加索引来解决它。
CREATE NONCLUSTERED INDEX [IX_UserName] ON [dbo].[AspNetUsers]
(
[UserName] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF,
DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
推荐阅读
- r - 在数据框列表中分配与行名称相同的列
- angular - 删除拦截器中添加的特定方法的加载器
- html - div 在子元素末尾添加空格
- numpy - 将正态分布绘制成具有 1000 个样本的直方图,间隔介于 1 到 10 之间
- shell - 文件名中的通配符在我的 shell 脚本中一直失败
- c++ - Arduino通过串口打印字符串
- testing - 如何确保我拥有的公式的“brew upgrade Formula”或“brew install Formula”始终运行测试?
- android - 如何防止微调器在 Android 10 中显示导航栏?
- javascript - d3.js:一页上的多个折线图
- laravel - Laravel 8 - 特质启动不触发