我有一个在 Azure 应用服务中运行的 .NET Core 2.1 Web 应用。最近几次,该应用程序在遇到大量“连接”后崩溃。
唯一documentation我可以找到这样的说法:
Connections
The number of bound sockets existing in the sandbox (w3wp.exe and its child processes). A bound socket is created by calling bind()/connect() APIs and remains until said socket is closed with CloseHandle()/closesocket().
查看指标时;连接似乎激增,而请求却相当相似。
什么可能导致这种情况?文档似乎表明它是打开的 TCP 连接的总数?如果这只是标准 API 调用;为什么它不也注册为请求?它是否是由潜在问题(如依赖性)引起的,并且随着响应延迟的增加,连接保持打开状态?
编辑:抱歉,当时 Web 应用程序运行的是 .NET Core 2.2。我已经回滚到 2.1,并且没有发现不稳定问题;但我也没有看到连接数量再次激增。
最佳答案
既然您说您安装了 Application Insights,那么您很可能是这些问题的受害者,这些问题已在最新版本中修复:
https://github.com/Microsoft/ApplicationInsights-dotnet/issues/594
https://github.com/Microsoft/ApplicationInsights-aspnetcore/issues/690
请更新到最新稳定版本的 SDK,看看是否有帮助。
关于Azure 应用服务 - 传入连接激增但未生成请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54710194/