Linux vs Windows
Ok I just posted about my Apache vs LiteSpeed. I decided to run some tests against Windows Server 2003 Standard Edition.
I used the same systems as my other tests.
Apache vs LiteSpeed
My Windows Server
For the sake of this Linux and Windows are very different beasts. Each having there own special features, example ASP vs PHP, yes PHP has been ported to Windows and it is very smooth, fast, and stable; same with MySQL however comparing the would be a little unfair as whatever the tests reported anyone could say it was wrong because of this or that.
So my tests were purely of Static content. As we sell download servers, I am always wondering which is faster, which is better and so forth.
I ran the simple 100.html test from before and these are the results.
Server Software: Microsoft-IIS/6.0
Server Hostname: 192.168.1.200
Server Port: 80
Document Path: /100.html
Document Length: 107 bytes
Concurrency Level: 1
Time taken for tests: 75.145035 seconds
Complete requests: 100000
Failed requests: 0
Write errors: 0
Total transferred: 37500000 bytes
HTML transferred: 10700000 bytes
Requests per second: 1330.76 [#/sec] (mean)
Time per request: 0.751 [ms] (mean)
Time per request: 0.751 [ms] (mean, across all concurrent requests)
Transfer rate: 487.34 [Kbytes/sec] received
Server Software: Microsoft-IIS/6.0
Server Hostname: 192.168.1.200
Server Port: 80
Document Path: /100.html
Document Length: 107 bytes
Concurrency Level: 10
Time taken for tests: 9.20998 seconds
Complete requests: 100000
Failed requests: 0
Write errors: 0
Total transferred: 37500000 bytes
HTML transferred: 10700000 bytes
Requests per second: 11085.25 [#/sec] (mean)
Time per request: 0.902 [ms] (mean)
Time per request: 0.090 [ms] (mean, across all concurrent requests)
Transfer rate: 4059.53 [Kbytes/sec] received
Server Software: Microsoft-IIS/6.0
Server Hostname: 192.168.1.200
Server Port: 80
Document Path: /100.html
Document Length: 107 bytes
Concurrency Level: 100
Time taken for tests: 6.892336 seconds
Complete requests: 100000
Failed requests: 0
Write errors: 0
Total transferred: 37515000 bytes
HTML transferred: 10704280 bytes
Requests per second: 14508.87 [#/sec] (mean)
Time per request: 6.892 [ms] (mean)
Time per request: 0.069 [ms] (mean, across all concurrent requests)
Transfer rate: 5315.32 [Kbytes/sec] received
Server Software: Microsoft-IIS/6.0
Server Hostname: 192.168.1.200
Server Port: 80
Document Path: /100.html
Document Length: 107 bytes
Concurrency Level: 200
Time taken for tests: 7.594768 seconds
Complete requests: 100000
Failed requests: 0
Write errors: 0
Total transferred: 37516125 bytes
HTML transferred: 10704601 bytes
Requests per second: 13166.96 [#/sec] (mean)
Time per request: 15.190 [ms] (mean)
Time per request: 0.076 [ms] (mean, across all concurrent requests)
Transfer rate: 4823.85 [Kbytes/sec] received
Server Software: Microsoft-IIS/6.0
Server Hostname: 192.168.1.200
Server Port: 80
Document Path: /100.html
Document Length: 107 bytes
Concurrency Level: 500
Time taken for tests: 8.755692 seconds
Complete requests: 100000
Failed requests: 0
Write errors: 0
Total transferred: 37573875 bytes
HTML transferred: 10721079 bytes
Requests per second: 11421.14 [#/sec] (mean)
Time per request: 43.778 [ms] (mean)
Time per request: 0.088 [ms] (mean, across all concurrent requests)
Transfer rate: 4190.76 [Kbytes/sec] received
Server Software: Microsoft-IIS/6.0
Server Hostname: 192.168.1.200
Server Port: 80
Document Path: /100.html
Document Length: 107 bytes
Concurrency Level: 1000
Time taken for tests: 11.456952 seconds
Complete requests: 100000
Failed requests: 0
Write errors: 0
Total transferred: 37867500 bytes
HTML transferred: 10804860 bytes
Requests per second: 8728.32 [#/sec] (mean)
Time per request: 114.570 [ms] (mean)
Time per request: 0.115 [ms] (mean, across all concurrent requests)
Transfer rate: 3227.65 [Kbytes/sec] received
All I can say is holy crap. I mean really holy crap. Let me just recap in short numbers here.
1 Connection 100,000 Hits – Requests per second: 1330.76 [#/sec] (mean)
10 Connection 100,000 Hits – Requests per second: 11085.25 [#/sec] (mean)
100 Connection 100,000 Hits – Requests per second: 14508.87 [#/sec] (mean)
200 Connection 100,000 Hits – Requests per second: 13166.96 [#/sec] (mean)
500 Connection 100,000 Hits – Requests per second: 11421.14 [#/sec] (mean)
1000 Connection 100,000 Hits – Requests per second: 8728.32 [#/sec] (mean)
Please note that I do not know how to setup an IIS server, I just installed it and turned it on, I am very sure with a proper setup this could be tweaked even more.
So at 1000 Concurrent Connections a default IIS 6.0 Setup on an AMD 1666 with 512 RAM can pump out >9000 hits a second. at 100 Connections this number jumps to >15000 hits a second.
This is amazing, just amazing.
Thoughts???