824.14 |
|
协程在本次测试中并没有像之前的传统 Apache/FPM 模式与常驻内存模式(同步)的测试一样展现出巨大的性能提升,说明:
常驻内存模式(同步)详细测试
首先 8 个 Worker 进程,并发 100 测试,RPS 为 838.65。
C:\Users\EDZ>ab -n 10000 -c 100 http://www.a.com/
This is ApacheBench, Version 2.3 3d3b4d2d36ecdad9084894b1b5ed13e5
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.a.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.13.9
Server Hostname: www.a.com
Server Port: 80
Document Path: /
Document Length: 101 bytes
Concurrency Level: 100
Time taken for tests: 11.924 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 2660000 bytes
HTML transferred: 1010000 bytes
Requests per second: 838.65 [#/sec] (mean)
Time per request: 119.239 [ms] (mean)
Time per request: 1.192 [ms] (mean, across all concurrent requests)
Transfer rate: 217.85 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.2 0 4
Processing: 20 118 18.3 118 195
Waiting: 19 118 18.4 118 195
Total: 20 118 18.4 119 195
Percentage of the requests served within a certain time (ms)
50% 119
66% 126
75% 130
80% 133
90% 141
95% 147
98% 155
99% 161
100% 195 (longest request)
然后使用 8 个 Worker 进程,并发 300 测试,RPS 为 683.78。
C:\Users\EDZ>ab -n 10000 -c 300 http://www.a.com/
This is ApacheBench, Version 2.3 3d3b4d2d36ecdad9084894b1b5ed13e5
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.a.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.13.9
Server Hostname: www.a.com
Server Port: 80
Document Path: /
Document Length: 101 bytes
Concurrency Level: 300
Time taken for tests: 14.624 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 2660000 bytes
HTML transferred: 1010000 bytes
Requests per second: 683.78 [#/sec] (mean)
Time per request: 438.735 [ms] (mean)
Time per request: 1.462 [ms] (mean, across all concurrent requests)
Transfer rate: 177.62 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 30.0 0 3000
Processing: 62 432 493.4 354 3457
Waiting: 54 431 488.1 354 3455
Total: 62 433 494.1 354 3457
Percentage of the requests served within a certain time (ms)
50% 354
66% 373
75% 385
80% 392
90% 411
95% 432
98% 3170
99% 3266
100% 3457 (longest request)
然后使用 8 个 Worker 进程,并发 500 测试,RPS 为 688.56。
C:\Users\EDZ>ab -n 10000 -c 500 http://www.a.com/
This is ApacheBench, Version 2.3 3d3b4d2d36ecdad9084894b1b5ed13e5
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.a.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.13.9
Server Hostname: www.a.com
Server Port: 80
Document Path: /
Document Length: 101 bytes
Concurrency Level: 500
Time taken for tests: 14.523 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 2660000 bytes
HTML transferred: 1010000 bytes
Requests per second: 688.56 [#/sec] (mean)
Time per request: 726.150 [ms] (mean)
Time per request: 1.452 [ms] (mean, across all concurrent requests)
Transfer rate: 178.87 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 30.0 0 3000
Processing: 102 707 618.4 596 3632
Waiting: 89 703 605.6 595 3629
Total: 102 707 618.9 596 3633
Percentage of the requests served within a certain time (ms)
50% 596
66% 620
75% 635
80% 645
90% 679
95% 3125
98% 3401
99% 3495
100% 3633 (longest request)
现在调整为 50 进程,100 并发测试,RPS 为 770.69。
进程的增加并没有带来并发量的提升。
C:\Users\EDZ>ab -n 10000 -c 100 http://www.a.com/
This is ApacheBench, Version 2.3 3d3b4d2d36ecdad9084894b1b5ed13e5
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.a.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.13.9
Server Hostname: www.a.com
Server Port: 80
Document Path: /
Document Length: 101 bytes
Concurrency Level: 100
Time taken for tests: 12.975 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 2660000 bytes
HTML transferred: 1010000 bytes
Requests per second: 770.69 [#/sec] (mean)
Time per request: 129.754 [ms] (mean)
Time per request: 1.298 [ms] (mean, across all concurrent requests)
Transfer rate: 200.20 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 1 42.4 0 3000
Processing: 10 128 499.8 56 7137
Waiting: 10 127 495.8 55 7137
Total: 11 129 503.3 56 7137
Percentage of the requests served within a certain time (ms)
50% 56
66% 72
75% 86
80% 97
90% 133
95% 179
98% 312
99% 3052
100% 7137 (longest request)
50 进程,300 并发测试,RPS 为 304.90。
对比 8 个进程时的结果,并发量降低非常明显,看来进程数过多并不能提升性能,反而会降低性能。
C:\Users\EDZ>ab -n 10000 -c 300 http://www.a.com/
This is ApacheBench, Version 2.3 3d3b4d2d36ecdad9084894b1b5ed13e5
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.a.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.13.9
Server Hostname: www.a.com
Server Port: 80
Document Path: /
Document Length: 101 bytes
Concurrency Level: 300
Time taken for tests: 32.798 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 2660000 bytes
HTML transferred: 1010000 bytes
Requests per second: 304.90 [#/sec] (mean)
Time per request: 983.942 [ms] (mean)
Time per request: 3.280 [ms] (mean, across all concurrent requests)
Transfer rate: 79.20 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 3 90.0 0 3001
Processing: 25 976 1339.8 189 3694
Waiting: 23 954 1316.5 188 3691
Total: 25 979 1341.0 189 3694
Percentage of the requests served within a certain time (ms)
50% 189
66% 289
75% 3094
80% 3113
90% 3184
95% 3249
98% 3315
99% 3375
100% 3694 (longest request)
50 进程,500 并发测试,RPS 为 378.95。
C:\Users\EDZ>ab -n 10000 -c 500 http://www.a.com/
This is ApacheBench, Version 2.3 3d3b4d2d36ecdad9084894b1b5ed13e5
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.a.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.13.9
Server Hostname: www.a.com
Server Port: 80
Document Path: /
Document Length: 101 bytes
Concurrency Level: 500
Time taken for tests: 26.389 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 2660000 bytes
HTML transferred: 1010000 bytes
Requests per second: 378.95 [#/sec] (mean)
Time per request: 1319.431 [ms] (mean)
Time per request: 2.639 [ms] (mean, across all concurrent requests)
Transfer rate: 98.44 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 2 79.4 0 3001
Processing: 64 1306 1434.7 341 3962
Waiting: 17 1224 1391.4 321 3959
Total: 65 1308 1435.2 342 3963
Percentage of the requests served within a certain time (ms)
50% 342
66% 3142
75% 3168
80% 3195
90% 3292
95% 3374
98% 3467
99% 3516
100% 3963 (longest request)
协程模式详细测试
首先 8 个 Worker 进程,并发 100 测试,RPS 为 834.12。
C:\Users\EDZ>ab -n 10000 -c 100 http://www.a.com/
This is ApacheBench, Version 2.3 3d3b4d2d36ecdad9084894b1b5ed13e5
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.a.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.13.9
Server Hostname: www.a.com
Server Port: 80
Document Path: /
Document Length: 101 bytes
Concurrency Level: 100
Time taken for tests: 11.989 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 2660000 bytes
HTML transferred: 1010000 bytes
Requests per second: 834.12 [#/sec] (mean)
Time per request: 119.886 [ms] (mean)
Time per request: 1.199 [ms] (mean, across all concurrent requests)
Transfer rate: 216.68 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.3 0 4
Processing: 84 119 9.8 122 165
Waiting: 84 119 9.8 122 164
Total: 84 119 9.8 123 165
Percentage of the requests served within a certain time (ms)
50% 123
66% 124
75% 125
80% 125
90% 126
95% 128
98% 131
99% 137
100% 165 (longest request)
然后使用 8 个 Worker 进程,并发 300 测试,RPS 为 837.50。
C:\Users\EDZ>ab -n 10000 -c 300 http://www.a.com/
This is ApacheBench, Version 2.3 3d3b4d2d36ecdad9084894b1b5ed13e5
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.a.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.13.9
Server Hostname: www.a.com
Server Port: 80
Document Path: /
Document Length: 101 bytes
Concurrency Level: 300
Time taken for tests: 11.940 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 2660000 bytes
HTML transferred: 1010000 bytes
Requests per second: 837.50 [#/sec] (mean)
Time per request: 358.207 [ms] (mean)
Time per request: 1.194 [ms] (mean, across all concurrent requests)
Transfer rate: 217.55 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 1 42.4 0 3001
Processing: 86 354 1043.0 161 7172
Waiting: 86 344 1011.9 160 7172
Total: 86 355 1044.5 161 7172
Percentage of the requests served within a certain time (ms)
50% 161
66% 182
75% 199
80% 212
90% 251
95% 302
98% 6103
99% 6135
100% 7172 (longest request)
然后使用 8 个 Worker 进程,并发 500 测试,RPS 为 824.14。
C:\Users\EDZ>ab -n 10000 -c 500 http://www.a.com/
This is ApacheBench, Version 2.3 3d3b4d2d36ecdad9084894b1b5ed13e5
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.a.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.13.9
Server Hostname: www.a.com
Server Port: 80
Document Path: /
Document Length: 101 bytes
Concurrency Level: 500
Time taken for tests: 12.134 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 2660000 bytes
HTML transferred: 1010000 bytes
Requests per second: 824.14 [#/sec] (mean)
Time per request: 606.690 [ms] (mean)
Time per request: 1.213 [ms] (mean, across all concurrent requests)
Transfer rate: 214.08 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.3 0 4
Processing: 92 332 585.3 198 6931
Waiting: 91 331 585.5 196 6931
Total: 92 332 585.3 198 6931
Percentage of the requests served within a certain time (ms)
50% 198
66% 242
75% 284
80% 334
90% 587
95% 932
98% 1216
99% 2390
100% 6931 (longest request)
相关推荐:
PHP设计模式之调解者模式的深入解析_PHP教程
php安装模式mod_php和Fastcgi的选择与对比