Approximate benchmarks for concurrent connections on IIS 6.0

Posted on 2007-11-30
Last Modified: 2008-09-17
Does anyone have any rough order-of-magnitude guidelines for the number of connections that IIS 6.0 can sustain, based on available memory, cores, cpus, etc. for both short and long-lived connections?
Question by:AGBrown
  • 3
  • 3
LVL 18

Expert Comment

by:Andrej Pirman
ID: 20381704
Theoretical limits vary from article to article. I remember reading somewhere in the past that IIS on 32-bit machine can handle no more than 8000 concurent connections, while this limit can be patched using some registry settings and pushed up to 40.000 concurent connections.

But all those are theory.
In praxis things work differently. Most of all it depends on application, which serves web page. It might be HTTP.SYS, might be ASP engine, .NET framework, and also PHP, PERL, JSP and others. Which might run as CGI or ISAPI module. Also, lots of resources are eat by database, which might be Access via ODBC, MSSQL, MySQL or others.
So I think there is no document, which would take into account all those parameters and be able to set some theorethical limits under all different circimstances.

So, by my oppinion, the best is to go from back - list your expectations, what you will host, databases etc, and those with expertise will be able to say if it will run or not.

For example:
on my Intel Core2Duo 2,13 with 2 GB RAM and 143 GB RAID 1 disks,
I run IIS with 200+ web pages, PHP, MSSQL, MySQL, .NET and ASP. Average concurent connections are between 15 and 50, monthly traffic around 1,5 GB, and it runs smoothly, without any problems.
I tested it with IIS Stress Tool and it handled over 176.000 visitors per hour, being from 8 to 32 simultaneously on, wizhout noticeable problems.

While on the other hand, I had some lousy PHP/MySQL programmers pages hosting, which were writing really bad PHP/MySQL code, so hosting their home-made portal slowed down my whole server.
LVL 18

Expert Comment

by:Andrej Pirman
ID: 20381730
Sorry, misstyped:
...I run IIS with 200+ DOMAINS (not web pages)
...monthly traffic around 1,5 TB (not GB)
LVL 12

Author Comment

ID: 20381797
That helps a bit I think - do you have any links to the articles?

Pretty much the situation exactly: long running requests to a web service written in .NET which just sits and waits for an event to fire before returning (rather than polling at intervals - there is a reason, and both techniques are used in this application). The service will be written using async techniques so that the IIS thread is only used during the setup and after the event fires and the background thread returns.

No database connections open during the long part of the request - only during the initial few milliseconds while things are setup for the wait.

Hardware - single HP DL360 G5 server with 4 x 72 GB 10k rpm disks in RAID 5, but with IIS running on a VMWare virtual machine using 2 cores from the dual 2-core CPUs on the host. RAM configurable - up to 2 GB available for the VM. Will later migrated to it's own server but this is what it uses at the moment - so if possible I'm looking for rough benchmarks for connections (concurrent, for long running requests, and per second for instant requests) for a similar setup.

Migrating Your Company's PCs

To keep pace with competitors, businesses must keep employees productive, and that means providing them with the latest technology. This document provides the tips and tricks you need to help you migrate an outdated PC fleet to new desktops, laptops, and tablets.

LVL 12

Author Comment

ID: 20381890
If this provokes any more discussion; I'm hoping to be able to handle about of the order of 1000 concurrent connections - approx 50 % of which will be taken up with these long-running requests to the web service.
LVL 18

Accepted Solution

Andrej Pirman earned 500 total points
ID: 20382307
Unfortunatelly I have no links to those articles, since I was pooling it from my memory.

I suggest you to test your web application with IIS Stress Tool, setting parameters according to your expected load. Here is a link:

And a story from my testing:
When I was first testing my servers, something went wrong - my anty-hammering and firewall application did their job, and not just stopped the unusuall stressed load, but also reported to many public databases my 2nd server, from which test was made, to be source of attack. So I put my own server to blacklist :))
LVL 12

Author Comment

ID: 20382381
I have to write the app in order to get to the testing stage; at the moment I'm trying to get some rough orders of magnitude (do I need one server or 100 to get this to work).

I have only just picked myself up off the floor from laughing so hard - I thought I was the only person who did things like that.


Featured Post

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
IIs block files web.config 6 124
Terminating connections by ip address 2 58
website went down 6 56
Installing IIS after Visual Studio 2015 Community Edition 5 77
Here are the symptoms: You start receiving calls from users that one of your legacy web apps isn't coming up, so you log into your IIS 5 server to check it out.  When you pull up the services, you notice that the WWW Publishing service isn't runn…
Preparing an email is something we should all take special care with – especially when the email is for somebody you may not know very well. The pressures of everyday working life stacked with a hectic office environment can make this a real challen…
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …
Email security requires an ever evolving service that stays up to date with counter-evolving threats. The Email Laundry perform Research and Development to ensure their email security service evolves faster than cyber criminals. We apply our Threat…

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question