20

Does IIS 7 have some limit of simultaneous requests? I'm using Windows Server 2008.

Thanks in advance.

iburlakov
  • 4,010
  • 7
  • 36
  • 40

3 Answers3

31

Yes, IIS 7 can have a limit of simultaneous requests, depending on the edition of Windows you're using. I see people often assert (as others have here) that somehow the limits have been lifted with IIS 7. It's just not always so, and depends on whether running 2008, 7, or Vista.

Let's start with Win2k8, since you mention using that. The following document suggests that 2k8 has only a server version, and with no limits. "With Windows Server 2008, IIS 7.0 ...there is no request execution limitation." (source: http://learn.iis.net/page.aspx/479/iis-70-features-and-vista-editions/)

That page also shows a table with other versions, but though it's not clear, those apply to Vista. Here are the limits for IIS 7 (from that table) on those versions: Basic & Starter editions: 3 requests, for Premium: 3, for Pro: 10, and for Server: unlimited.

I've found similar limits, documented here: http://technet.microsoft.com/en-us/library/cc268241.aspx. "With Starter and Home Basic editions of Windows Vista, the simultaneous request execution limit for IIS is three for Windows Vista Home Premium. ...For Windows Vista Business, Enterprise, and Ultimate edition...the simultaneous request execution limit is ten. ..With server editions of Window, IIS 7.0 has no request execution limit."

Finally, while I've not found a document stating the limits for Windows 7, I have confirmed the same limit of 3 on my copy of Windows 7 Home Premium. (It's curious that the learn.iis.net page above does discuss both Vista and Windows 2008, but makes no mention of Windows 7.)

With respect to this limit, if it's a problem for you or other readers, here's a potentially valuable bonus tip that I've not seen documented anywhere: the limit is really per application pool, or more technically per worker process. So you can certainly get more request simultaneously against your box by using multiple app pools.

But perhaps you want to have more requests against a single site, which obviously can be connected only to a single app pool. There's still good news: you can increase the number of worker processes per app pool in the "advanced settings" for a given app pool (right-click on the app pool), increasing "Maximum Worker Processes" from the default of 1. (Some will recognize that as being the same as what was known as "web gardens" for app pools in IIS 6.)

For those new to them, whether creating new app pools or more worker processes for an app pool, for each new worker process, you'll see a new w3wp.exe in task manager.

Finally, there's a caution to consider if you decide to increase the number of worker processes. At least back in IIS 6, I documented that if you're running an ASP.NET app using sessions that are "inproc" (or in memory), the default, there is a problem with using multiple worker processes (web gardens), in that the sessions are not replicated among the worker processes. That may not be an issue for the OP, so I'll say you can learn more at an entry I did a few years ago: http://bluedragon.blog-city.com/lost_sessions_webgardens_sessionstate.htm.

charlie arehart
  • 4,421
  • 3
  • 20
  • 18
  • In your second paragraph you write Basic & Starter editions of Win2k8. Win2k8 is server only, with no limits. But for Win7 you are correct the limits are 3 and 10. – Haukman Jun 23 '11 at 06:23
  • Thanks for that. I was going on what the page said (that I linked to), and it wasn't clear from that table that only server was offered in 2008. That said, I did say in that paragraph that for server it was unlimited. I'll revise my comment slightly to make that more clear. I'd still argue that the answer marked as "answer" is not correct, since that answer does NOT limit itself to 2008. But yes, the OP did ask specifically about it, so it's true that for them, there are no limits. – charlie arehart Apr 03 '12 at 23:41
  • 1
    I normally hate pointless "thank you" comments, but I just have to say... Thank You. This information is *SO* hard to find on the web and this was super helpful, especially the part about application pools. – mhenry1384 Jan 17 '13 at 16:28
11

On Windows Server operating systems, IIS 7.0 has no request execution limit. Source

Francisco Aquino
  • 8,898
  • 1
  • 27
  • 37
  • 2
    Umm, that page you link to does indicate that it does have limits, of either 3 or 10 requests, depending on the version of Windows. I've elaborated in an answer I've just offered. – charlie arehart Feb 03 '11 at 05:10
  • @charliearehart Actually that link does say Windows Server operating systems have no limit (which is what the original question was asking about). Your answer is definitely more thorough though. – mhenry1384 Jan 17 '13 at 16:33
3

The limitations by default are the capacity of your server to serve those requests (i.e. CPU, memory) although you can set up throttling etc based on a number of concurrent users.

Fenton
  • 206,497
  • 63
  • 356
  • 369