我们在Windows Server 2012 R2上部署了一个ASP.NET核心应用程序。除非有时客户遇到502.5 - 进程失败错误导致站点崩溃,否则一切正常。他们说它会停留1-5分钟。
从EventViewer我可以看到这些错误:
Failed to start process with commandline '".\<appname>.exe" ', ErrorCode = '0x80070002'.
从EventViewer中的错误我可以说错误发生了两次这个弱点。
这似乎是一个普遍的问题,其他人也有经验,但我仍然不知道为什么会发生这种情况。
我们已将此应用程序部署在其他一些机器上,我从未见过这种情况。
我的猜测是IIS的快速失败保护功能会触发并重新启动池。它设置为默认值 - 5崩溃5分钟。我已经检查了我们的日志中的错误并且发现了很多错误:
fail: Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware[0]
An unhandled exception has occurred: The antiforgery token could not be decrypted.
System.InvalidOperationException: The antiforgery token could not be decrypted. ---> System.Security.Cryptography.CryptographicException: The key {259b6327-0ab1-4dff-95ed-48f568879fab} was not found in the key ring.
在关注此https://docs.microsoft.com/en-us/aspnet/core/publishing/iis#create-a-data-protection-registry-hive并在本地进行了一些测试之后(我也有测试),错误仍然存在。
的问题:
这可能是502.5错误的原因吗?我是否可以禁用(或延长每分钟的崩溃次数)Rapid Fail Protected?如果我这样做会怎么样?