我在IIS 7中托管了WCF服务(.Net framework 4.0)。该服务进行数据库调用。应用程序和数据库都安装在单独的盒子上(每个4C / 4GB)。
我从一个Visual Studio客户端生成了1000个并发请求。
测量的性能计数器如下,
到达率@ HTTP.SYS:~1100
ASP.NET请求/第二:~1100
每秒WCF呼叫:~1100
上述计数器指出请求排队的阶段。所以我没有改变任何ASP.NET设置(Process model - autoconfig = true,maxConcurrentRequestPerCPU = 5000,HTTP.SYS queue = 1000)
但我看到处理时间在增加。
WCF呼叫持续时间(毫秒):280
ASP.NET请求执行时间(毫秒):540
总请求延迟(毫秒):920(在VS Web测试客户端测量)
ASP.NET的“Requests Queued”计数器始终显示为零,我试图找出与实际WCF调用持续时间相比是什么使ASP.NET执行加倍。
由于任何I / O瓶颈,响应是否排队?
是否有任何计数器需要查看除上述计数器以外的其他计数器。
任何投入都将受到赞赏。
谢谢。