即使請求執行低於其限制,爲什麼請求排隊也很高?即使請求執行低於其限制,爲什麼請求排隊也很高?
我們使用以下設置
- 目標框架:NET 3.5的框架
- 應用程序池:.Net框架V2.0.50727與託管管道模式 - 集成
- 而且,沒有CPU的是8所以maxconcurrentRequestperCPUx8 = 96
- RAM:24 GB
隨着machine.config中和作爲默認設置pnet.config
我們使用ACT進行了測試,並使用了性能計數器。
ASP.NET應用程序V2.0.50727(_LM_W3SVC_2_ROOT)\請求執行
ASP.NET V2.0.50727 \請求排隊
現在我們做了如下改變
在aspnet.config中
<system.web>
<applicationPool maxConcurrentRequestsPerCPU="5000" maxConcurrentThreadsPerCPU="0" requestQueueLimit="5000"/>
</system.web>
Machine.config中
<system.web>
<processModel autoConfig="false" maxWorkerThreads="4095" maxIoThreads="4095" minWorkerThreads="2047" minIoThreads="2047" />
</system.web>
並提供應用程序池隊列限制= 5000 現在我們有非常少的請求排隊比較高的要求執行如下快照描繪了!
ASP.NET應用V2.0.50727(_LM_W3SVC_2_ROOT)\請求執行
ASP.NET V2.0.50727 \請求排隊
但令人驚訝的平均。 ACT的每秒響應時間沒有提高。
因此,我有以下問題...
1)爲什麼有要求,甚至排隊時,要求執行低於其限制(在我的病案號CPU的X maxconcurrentrequestperCPU = 8×12 = 96)?
2)即使更改了aspnet.config,machine.config並提供了應用程序池隊列限制= 5000,爲什麼請求隊列被觀察?
3)爲什麼由於請求執行計數器較高,ACT響應時間沒有得到改善?
任何幫助表示讚賞!
感謝,
Sandeepkumar古普塔