我有一个 SignalR 应用程序在生产中运行,此处输入代码Requests Current
值超过 5000,呈现503 Service Unavailable
错误。所以我用以下内容更新了 Aspnet.config 以增加Requests Current
值
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<system.web>
<applicationPool
maxConcurrentRequestsPerCPU="20000"
maxConcurrentThreadsPerCPU="20000"
requestQueueLimit="20000" />
</system.web>
<runtime>
<legacyUnhandledExceptionPolicy enabled="false" />
<legacyImpersonationPolicy enabled="true"/>
<alwaysFlowImpersonationPolicy enabled="false"/>
<SymbolReadingPolicy enabled="1" />
<shadowCopyVerifyByTimestamp enabled="true"/>
</runtime>
<startup useLegacyV2RuntimeActivationPolicy="true" />
</configuration>
但是,现在 Requests Current 值能够增加到超过 5000,并且在略高于 10,000 时,服务不可用。我有时只看到少数排队的请求(少于 100 个)。
还需要配置什么才能使其正常运行?
- 更新 -
使用 0.5.2 后,Requests Current 似乎稳定下来,这是一个显着的改进。这个测试已经运行了两个多小时,而在不到 30 分钟内,req 的电流将继续构建。
内存消耗仍有一些增加,但可能不是由于 Req 的 Current: