注意点として、requestQueueLimitの変更だけでは、別の上限(MaxConcurrentRequestsPerCPU)に引っかかる可能性がるので、留意が必要そうです。
1)アプリケーションプールのキュー長さを1000から65535に増やす
Application Pool>詳細設定>詳細>全般>キューの長さ
2)Machine.Configの変更
ProcessModel要素のrequestQueueLimitプロパティを100000に増やす
ASP.NET の要求のキュー制限を変更するには
1.hidemaru %systemroot%\Microsoft.Net\Framework64\v2.0.50727\CONFIG\machine.config
3.↓に属性を追加する
<system.web>
<processModel autoConfig="true"/>
↓
<system.web>
<processModel autoConfig="true" requestQueueLimit="100000"/>
C:\Windows\System32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000
追記:デフォルト値の変更について(公式)
https://blogs.msdn.microsoft.com/tmarq/2007/07/20/asp-net-thread-usage-on-iis-7-5-iis-7-0-and-iis-6-0/
マイクロソフトの推奨は、
CPUあたりの同時要求数をレジストリでいじる
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ ASP.NET \ 2.0.50727.0内のMaxConcurrentRequestsPerCPU
>読んでいったら、.net 3.5からは、MaxConcurrentRequestsPerCPUもconfigに記載ができる。
<system.web>
<applicationPool maxConcurrentRequestsPerCPU = "12" maxConcurrentThreadsPerCPU = "0" requestQueueLimit = "5000" />
</system.web>
英語のエラーは、
HTTP Error 503.2 - Service Unavailable
The serverRuntime@appConcurrentRequestLimit setting is being exceeded.
同様のエラーが発生し、このサイトにたどり着きました。
返信削除レジストリを変えるのは怖いので、まずはアプリケーションプールのキュー長さだけ変更してみます。