IIS Express 7.5不会同时处理请求

时间:2012-03-12 18:19:14

标签: iis-express

刚刚安装了IIS Express 7.5,我正在尝试调试ASP.NET MVC 3应用程序中的并发问题。但是,我似乎无法让Web服务器同时处理请求,它们只是逐个执行。

我正在运行Apache Bench来模拟并发负载,但它刚刚排队等待。

有人有任何想法吗?

感谢。

2 个答案:

答案 0 :(得分:25)

如果您正在使用会话并为会话请求重用会话ID,那么ASP.NET会对请求进行排队,因为它需要对每个请求的会话进行独占锁定。

取自http://msdn.microsoft.com/en-us/library/ms178581.aspx

  

并发请求和会话状态

     

对于每个会话,访问ASP.NET会话状态是独占的,这意味着   如果两个不同的用户发出并发请求,则访问每个用户   同时授予单独的会话。但是,如果两个并发   请求是针对同一会话进行的(使用相同的SessionID)   value),第一个请求获得对会话的独占访问权   信息。第二个请求仅在第一个请求之后执行   已完成。(第二个会话也可以获得访问权限   锁定信息被释放,因为第一个请求超过了   锁定超时。)如果@Page中的EnableSessionState值   指令设置为ReadOnly,即只读会话的​​请求   信息不会导致会话数据的独占锁定。   但是,会话数据的只读请求可能仍需要等待   对于由会话数据的读写请求设置的锁定来清除。

答案 1 :(得分:0)

你的web.config中没有任何奇怪的内容,例如maxConcurrentRequestsPerCPU,maxConcurrentThreadsPerCPU的设置?

http://msdn.microsoft.com/en-us/library/dd560842.aspx