Osk*_*len 4 lsass windows-server-2012-r2 iis-8.5
我有一台装有 Windows 2012 R2 的网络服务器,仅在 ASP.NET 4.5.1、IIS 8.5 上运行一个网站。它没有,也从未安装过 AD 角色。
上周日,进程 lsass.exe,突然开始使用 20-40% 的 CPU。我们没有对服务器或周围网络进行任何更改。(此时没有发生 Windows 更新)
此后,网站逐渐恶化,响应时间越来越长,直到服务器重新启动,然后一切恢复正常,但从那里开始慢慢走下坡路。服务器现在必须每 4-12 小时重新启动一次,以保持站点正常运行。服务器上的 CPU 使用率永远不会达到 100%,并且还有空闲 RAM 可用。
从用于监控站点和服务器的 New Relic 来看,看起来是请求队列导致了性能不佳,从重启后的约 100 毫秒增加到几个小时后的 10 秒以上。
我有其他服务器,具有相同的网站代码,在相同的环境中运行,负载比这更多,但没有显示这种行为。(虽然他们在 WS 2012(不是 R2)上)
我已经监控了网络流量,并没有看到任何奇怪的地方。在 Perfmon 中,确实突出且似乎相关的一件事是"Security per process statistics\Credential Handles",它在 lsass 进程中不断增加,重新启动后仅从少数开始,几次后达到 100.000+营业时间。没有其他进程这样做,其他服务器上的 lsass.exe 只有几百个“凭据句柄”
查看上个月 lsass.exe 进程的图表:

网站响应时间图,来自 New relic。每个峰值都需要重新启动,服务器也在较小的峰值上重新启动,在此图表中不太明显:

关于可能出现什么问题以及如何解决的任何建议?
编辑:lsass.exe 上 Process Explorer 的 TCP/IP 面板的快照

从 lsass.exe 生成的典型线程的快照,这些在进程资源管理器中大约每秒弹出:

小智 6
在 Windows 2012 R2 和 2008 R2 SP1 上启用 TLS 1.2(还有 1.0 和 1.2)后,进程 lsass.exe 开始使 CPU 过载。我使用了 IISCrypto40,单击“最佳实践”,并在“启用密钥交换”中仅启用 PKCS。之后,cpu 上的负载恢复正常(5 - 10%)。ps 抱歉糟糕的英文 IISCrypto 偏好
| 归档时间: |
|
| 查看次数: |
17949 次 |
| 最近记录: |