简体   繁体   English

IIS同时请求限制

[英]IIS simultaneous requests limit

IIS 7 on Vista has a limit for concurrent requests (up to 10). Vista上的IIS 7对并发请求有限制(最多10个)。 I have a Virtual PC on my Vista with Windows Server 2008 installed on it. 我在Vista上安装了Windows Server 2008的Virtual PC。 IIS 7 on the virtual PC still limits simultaneous requests. 虚拟PC上的IIS 7仍然限制了并发请求。 When I run the same application on ASP.NET Development Server, it's ok - there are no limits. 当我在ASP.NET开发服务器上运行相同的应用程序时,没关系-没有限制。

Is the problem in host OS? 主机操作系统有问题吗? How can I tune IIS to process more concurrent requests? 如何调整IIS以处理更多并发请求? It's a must for application because it should handle a lot of concurrent open connections and requests connected with them. 这对于应用程序来说是必须的,因为它应该处理许多并发的打开连接和与其连接的请求。

UPD: i've noticed a difference between running app under Vista itself and under the virtual PC. UPD:我注意到在Vista本身和虚拟PC上运行应用程序之间存在差异。

When running on Vista there is a request limit (10). 在Vista上运行时,有一个请求限制(10)。 If there are already 10 long-running requests the following requests hang (they are in a request queue). 如果已经有10个长期运行的请求,则以下请求将挂起(它们在请求队列中)。

When running on the virtual machine something strange happens. 在虚拟机上运行时,会发生一些奇怪的事情。 I have only 2 long-running requests completed. 我只完成了2个长期运行的请求。 The following requests (even not long-running) are blocked. 以下请求(即使不是长时间运行的请求)也被阻止。

For this test i used self-written load testing script. 对于此测试,我使用了自写的负载测试脚本。 It pushes a lot of requests at a time. 一次推送很多请求。

Any ideas? 有任何想法吗? How to test the app on IIS? 如何在IIS上测试应用程序?

Virtual PC is a client virtualization software mostly used for testing, demos etc... You can installed Server OS on it, but connection limit will still apply. Virtual PC是主要用于测试,演示等的客户端虚拟化软件。您可以在其上安装Server OS,但是连接限制仍然适用。

IIS7 onwards requests are not rejected but just queued, so what you are seeing is expected. IIS7以后的请求不会被拒绝,而只是排队,因此您所看到的是预期的。 Load test needs to be done on a Server OS which uses Server Virtualization (hyper-v). 负载测试需要在使用服务器虚拟化(hyper-v)的服务器操作系统上完成。

I will say the most likely culprit is Microsoft restricting the number of simultaneous inbound connections to their consumer-grade operating systems. 我会说,最可能的罪魁祸首是微软限制了其消费者级操作系统的同时入站连接数量。 We can't have you using them as servers, now! 现在,我们不能让您将它们用作服务器! :) :)

Are you getting 500 Server Busy error on your virtual server, or are requests being rejected at the network level? 您在虚拟服务器上收到500 Server Busy错误,还是在网络级别拒绝了请求? The answer to that will answer your question. 答案将回答您的问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM