1.环境
此处笔者以同样的配置装两台机器,系统未做任何优化操作
win2003 IIS6.0 192.168.0.108
win2008 IIS7.5 192.168.0.115
测试机器
RHEL6.4_64
测试工具
apache ab
2.测试
# curl http://192.168.0.115 #2008 IIS7.5
<h3>cai test 115!</h3>
# curl http://192.168.0.108 #2003 IIS6.0
<h1>text cai 123!</h1>
返回的字节数一样
# ab -c 1000 -n 200000 http://192.168.0.115/ #2008 IIS7.5
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.0.115 (be patient)
Completed 20000 requests
Completed 40000 requests
Completed 60000 requests
Completed 80000 requests
Completed 100000 requests
Completed 120000 requests
Completed 140000 requests
Completed 160000 requests
Completed 180000 requests
Completed 200000 requests
Finished 200000 requests
Server Software: Microsoft-IIS/7.5
Server Hostname: 192.168.0.115
Server Port: 80
Document Path: /
Document Length: 24 bytes
Concurrency Level: 1000
Time taken for tests: 47.831 seconds
Complete requests: 200000
Failed requests: 0
Write errors: 0
Total transferred: 57600000 bytes
HTML transferred: 4800000 bytes
Requests per second: 4181.40 [#/sec] (mean)
Time per request: 239.154 [ms] (mean)
Time per request: 0.239 [ms] (mean, across all concurrent requests)
Transfer rate: 1176.02 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 2 45.4 0 3049
Processing: 15 237 35.5 236 4210
Waiting: 15 237 35.2 236 4210
Total: 40 239 57.3 236 4211
Percentage of the requests served within a certain time (ms)
50% 236
66% 241
75% 244
80% 246
90% 252
95% 268
98% 288
99% 301
100% 4211 (longest request)
并发1000,一共20W次请求 耗时47.83秒
完成请求20W次,失败的事务0次
# ab -c 1000 -n 200000 http://192.168.0.108/ #2003 IIS6.0
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.0.108 (be patient)
Completed 20000 requests
Completed 40000 requests
Completed 60000 requests
Completed 80000 requests
Completed 100000 requests
Completed 120000 requests
Completed 140000 requests
Completed 160000 requests
Completed 180000 requests
Completed 200000 requests
Finished 200000 requests
Server Software: Microsoft-IIS/6.0
Server Hostname: 192.168.0.108
Server Port: 80
Document Path: /
Document Length: 22 bytes
Concurrency Level: 1000
Time taken for tests: 28.096 seconds
Complete requests: 200000
Failed requests: 0
Write errors: 0
Total transferred: 68156740 bytes
HTML transferred: 4410142 bytes
Requests per second: 7118.40 [#/sec] (mean)
Time per request: 140.481 [ms] (mean)
Time per request: 0.140 [ms] (mean, across all concurrent requests)
Transfer rate: 2368.98 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 72 135.6 59 3265
Processing: 4 68 31.8 69 729
Waiting: 2 51 30.3 49 724
Total: 8 140 141.5 133 3362
Percentage of the requests served within a certain time (ms)
50% 133
66% 136
75% 139
80% 142
90% 149
95% 155
98% 317
99% 1126
100% 3362 (longest request)
并发1000,一共20W次请求 耗时28.09秒
完成请求20W次,失败的事务0次
# ab -c 2000 -n 200000 http://192.168.0.115/ #win 2008 IIS7.5
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.0.115 (be patient)
Completed 20000 requests
Completed 40000 requests
Completed 60000 requests
Completed 80000 requests
Completed 100000 requests
Completed 120000 requests
Completed 140000 requests
Completed 160000 requests
Completed 180000 requests
Completed 200000 requests
Finished 200000 requests
Server Software: Microsoft-IIS/7.5
Server Hostname: 192.168.0.115
Server Port: 80
Document Path: /
Document Length: 24 bytes
Concurrency Level: 2000
Time taken for tests: 35.582 seconds
Complete requests: 200000
Failed requests: 77060
(Connect: 0, Receive: 0, Length: 77060, Exceptions: 0)
Write errors: 0
Non-2xx responses: 77060
Total transferred: 74938500 bytes
HTML transferred: 28072120 bytes
Requests per second: 5620.79 [#/sec] (mean)
Time per request: 355.822 [ms] (mean)
Time per request: 0.178 [ms] (mean, across all concurrent requests)
Transfer rate: 2056.71 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 92 222.6 74 3096
Processing: 0 261 177.4 331 5061
Waiting: 0 243 179.1 313 5041
Total: 0 352 280.9 405 5802
Percentage of the requests served within a certain time (ms)
50% 405
66% 434
75% 445
80% 454
90% 493
95% 582
98% 1133
99% 1388
100% 5802 (longest request)
并发2000,一共20W次请求 耗时35.58秒
完成请求20W次,失败的事务77060次
ab -c 2000 -n 200000 http://192.168.0.108/ #win 2003 IIS6.0
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.0.108 (be patient)
Completed 20000 requests
Completed 40000 requests
Completed 60000 requests
Completed 80000 requests
Completed 100000 requests
Completed 120000 requests
Completed 140000 requests
Completed 160000 requests
Completed 180000 requests
Completed 200000 requests
Finished 200000 requests
Server Software: Microsoft-IIS/6.0
Server Hostname: 192.168.0.108
Server Port: 80
Document Path: /
Document Length: 22 bytes
Concurrency Level: 2000
Time taken for tests: 28.993 seconds
Complete requests: 200000
Failed requests: 245
(Connect: 0, Receive: 0, Length: 245, Exceptions: 0)
Write errors: 0
Non-2xx responses: 245
Total transferred: 68311405 bytes
HTML transferred: 4424394 bytes
Requests per second: 6898.22 [#/sec] (mean)
Time per request: 289.930 [ms] (mean)
Time per request: 0.145 [ms] (mean, across all concurrent requests)
Transfer rate: 2300.91 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 145 166.4 123 3023
Processing: 16 143 41.3 144 757
Waiting: 9 107 40.2 102 728
Total: 53 288 172.1 274 3188
Percentage of the requests served within a certain time (ms)
50% 274
66% 281
75% 287
80% 292
90% 305
95% 319
98% 1248
99% 1269
100% 3188 (longest request)
并发2000,一共20W次请求 耗时28.99秒
完成请求20W次,失败的事务245次
# ab -c 3000 -n 200000 http://192.168.0.108/ #win 2003 IIS6.0
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.0.108 (be patient)
Completed 20000 requests
Completed 40000 requests
Completed 60000 requests
Completed 80000 requests
Completed 100000 requests
Completed 120000 requests
Completed 140000 requests
Completed 160000 requests
Completed 180000 requests
Completed 200000 requests
Finished 200000 requests
Server Software: Microsoft-IIS/6.0
Server Hostname: 192.168.0.108
Server Port: 80
Document Path: /
Document Length: 22 bytes
Concurrency Level: 3000
Time taken for tests: 27.520 seconds
Complete requests: 200000
Failed requests: 3197
(Connect: 0, Receive: 0, Length: 3197, Exceptions: 0)
Write errors: 0
Non-2xx responses: 3197
Total transferred: 67817245 bytes
HTML transferred: 4443558 bytes
Requests per second: 7267.41 [#/sec] (mean)
Time per request: 412.802 [ms] (mean)
Time per request: 0.138 [ms] (mean, across all concurrent requests)
Transfer rate: 2406.52 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 23 208 281.4 178 7209
Processing: 32 202 144.6 202 9268
Waiting: 11 154 140.8 146 9240
Total: 81 410 331.6 406 10389
Percentage of the requests served within a certain time (ms)
50% 406
66% 418
75% 427
80% 433
90% 477
95% 784
98% 1344
99% 1421
100% 10389 (longest request)
并发3000,一共20W次请求 耗时27.52秒
完成请求20W次,失败的事务3197次
# ab -c 3000 -n 200000 http://192.168.0.115/ #win 2008 IIS7.5
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.0.115 (be patient)
Completed 20000 requests
Completed 40000 requests
Completed 60000 requests
Completed 80000 requests
Completed 100000 requests
Completed 120000 requests
Completed 140000 requests
Completed 160000 requests
Completed 180000 requests
Completed 200000 requests
Finished 200000 requests
Server Software: Microsoft-IIS/7.5
Server Hostname: 192.168.0.115
Server Port: 80
Document Path: /
Document Length: 24 bytes
Concurrency Level: 3000
Time taken for tests: 34.555 seconds
Complete requests: 200000
Failed requests: 92681
(Connect: 0, Receive: 0, Length: 92681, Exceptions: 0)
Write errors: 0
Non-2xx responses: 92681
Total transferred: 78456969 bytes
HTML transferred: 32789974 bytes
Requests per second: 5787.86 [#/sec] (mean)
Time per request: 518.326 [ms] (mean)
Time per request: 0.173 [ms] (mean, across all concurrent requests)
Transfer rate: 2217.28 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 179 340.3 86 7168
Processing: 0 336 378.5 329 6706
Waiting: 0 308 376.6 308 6661
Total: 1 515 548.1 424 7629
Percentage of the requests served within a certain time (ms)
50% 424
66% 558
75% 604
80% 634
90% 1020
95% 1270
98% 1576
99% 3583
100% 7629 (longest request)
并发3000,一共20W次请求 耗时34.55秒
完成请求20W次,失败的事务92681次
ab -c 5000 -n 200000 http://192.168.0.115/ #win 2008 IIS7.5
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.0.115 (be patient)
Completed 20000 requests
Completed 40000 requests
Completed 60000 requests
Completed 80000 requests
Completed 100000 requests
Completed 120000 requests
Completed 140000 requests
Completed 160000 requests
Completed 180000 requests
Completed 200000 requests
Finished 200000 requests
Server Software: Microsoft-HTTPAPI/2.0 //注意 当链接到5000的时候 IIS7用的server 却成了HTTPAPI
Server Hostname: 192.168.0.115
Server Port: 80
Document Path: /
Document Length: 24 bytes
Concurrency Level: 5000
Time taken for tests: 35.630 seconds
Complete requests: 200000
Failed requests: 67779
(Connect: 0, Receive: 0, Length: 67779, Exceptions: 0)
Write errors: 0
Non-2xx responses: 67779
Total transferred: 72875907 bytes
HTML transferred: 25271394 bytes
Requests per second: 5613.22 [#/sec] (mean)
Time per request: 890.755 [ms] (mean)
Time per request: 0.178 [ms] (mean, across all concurrent requests)
Transfer rate: 1997.40 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 149 355 138.4 346 3246
Processing: 108 526 161.0 550 4057
Waiting: 23 424 170.6 458 3974
Total: 269 881 219.2 925 4463
Percentage of the requests served within a certain time (ms)
50% 925
66% 972
75% 989
80% 1001
90% 1062
95% 1109
98% 1260
99% 1722
100% 4463 (longest request)
并发5000,一共20W次请求 耗时35.63秒
完成请求20W次,失败的事务67779次
# ab -c 5000 -n 200000 http://192.168.0.108/ #win 2003 IIS6.0
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.0.108 (be patient)
Completed 20000 requests
Completed 40000 requests
Completed 60000 requests
Completed 80000 requests
Completed 100000 requests
Completed 120000 requests
Completed 140000 requests
Completed 160000 requests
Completed 180000 requests
Completed 200000 requests
Finished 200000 requests
Server Software: Microsoft-IIS/6.0
Server Hostname: 192.168.0.108
Server Port: 80
Document Path: /
Document Length: 22 bytes
Concurrency Level: 5000
Time taken for tests: 28.670 seconds
Complete requests: 200000
Failed requests: 5522
(Connect: 0, Receive: 0, Length: 5522, Exceptions: 0)
Write errors: 0
Non-2xx responses: 5522
Total transferred: 67784370 bytes
HTML transferred: 4481708 bytes
Requests per second: 6976.03 [#/sec] (mean)
Time per request: 716.740 [ms] (mean)
Time per request: 0.143 [ms] (mean, across all concurrent requests)
Transfer rate: 2308.92 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 121 347 256.7 319 7403
Processing: 134 361 112.0 360 3485
Waiting: 26 265 107.4 255 3440
Total: 266 708 285.6 704 7744
Percentage of the requests served within a certain time (ms)
50% 704
66% 721
75% 734
80% 753
90% 812
95% 1094
98% 1706
99% 1744
100% 7744 (longest request)
并发5000,一共20W次请求 耗时28.67秒
完成请求20W次,失败的事务5522次
3.报告
并发 总请求 耗时(秒) 完成次数 失败次数
IIS7.5 1000 20W 47.83 20W 0
IIS6.0 1000 20W 28.09 20W 0
并发 总请求 耗时(秒) 完成次数 失败次数
IIS7.5 2000 20W 35.58 20W 77060
IIS6.0 2000 20W 28.99 20W 245
并发 总请求 耗时(秒) 完成次数 失败次数
IIS7.5 3000 20W 34.55 20W 92681
IIS6.0 3000 20W 27.52 20W 3197
并发 总请求 耗时(秒) 完成次数 失败次数
IIS7.5 5000 20W 35.63 20W 67779
IIS6.0 5000 20W 28.67 20W 5522
并发 总请求 耗时(秒) 完成次数 失败次数
IIS7.5 10000 20W 38.13 20W 88569
IIS6.0 10000 20W 29.76 20W 10951
并发 总请求 耗时(秒) 完成次数 失败次数
IIS7.5 20000 20W 41.95 20W 95448
IIS6.0 20000 20W -- -- reset by peer
4.总结
总体上看windows2008+IIS7.5的性能和承受能力都不如windows+IIS6
当并发5000的时候IIS7.5用HTTPAPI 此刻IIS6.0的出错率也达到了25%
当并发到10000的时候IIS7.5基本保持了并发5000时候的失败事务,但是IIS6.0出错率上升到50%左右
当并发到20000的时候,IIS7.5用的HTTPAPI还能承受,有一半的请求还能正常返回,但是windows2003+IIS6.0却直接reset连接了
可见win2003的系统比不上2008的承受能力,但是IIS6的处理能力还是值得肯定的。
总体看win2003+IIS6.0更适用于线上,出错率低,响应速度快
由此得出结论IIS的并发也就是2000左右
此次测试不涉及动态程序,不过接下来肯定还会针对动态程序进行测试。
##########################################################################
作者:john
迷途小运维亲测
转载请注明出处