ApacheとnginxとLiteSpeedで性能測定してみた!②
- 開発
- ApacheとnginxとLiteSpeedで性能測定してみた!①
- ApacheとnginxとLiteSpeedで性能測定してみた!②
- ApacheとnginxとLiteSpeedで性能測定してみた!③
はじめに
前回は8Kの画像ファイルに同時接続100人で10000リクエストを処理し、各種Webサーバソフトウェアの性能を測定しました。
今回は負荷条件を変更し、測定してみます。
どのような変化が起こったかご確認ください!
5倍の負荷(同時接続500人で50000リクエスト)をかけてみます。
まずはApacheです。
※ Apacheはデフォルトの設定では同時リクエストは256しか処理できないため、設定値 ServerLimit と MaxClient を1000に設定して実施しています。
[root@ip-XXX-XXX-XXX-XXX html]# ab -n 50000 -c 500 http://localhost:8080/test.png
This is ApacheBench, Version 2.3 <$Revision: 1843412 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking localhost (be patient)
Completed 5000 requests
Completed 10000 requests
Completed 15000 requests
Completed 20000 requests
Completed 25000 requests
Completed 30000 requests
Completed 35000 requests
Completed 40000 requests
Completed 45000 requests
Completed 50000 requests
Finished 50000 requests
Server Software: Apache/2.4.41
Server Hostname: localhost
Server Port: 8080
Document Path: /test.png
Document Length: 8106 bytes
Concurrency Level: 500
Time taken for tests: 6.892 seconds
Complete requests: 50000
Failed requests: 0
Total transferred: 418800000 bytes
HTML transferred: 405300000 bytes
Requests per second: 7254.33 [#/sec] (mean)
Time per request: 68.924 [ms] (mean)
Time per request: 0.138 [ms] (mean, across all concurrent requests)
Transfer rate: 59338.14 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 25 130.9 8 1049
Processing: 1 35 55.8 27 1343
Waiting: 0 28 55.6 18 1343
Total: 1 60 146.2 35 1517
Percentage of the requests served within a certain time (ms)
50% 35
66% 40
75% 43
80% 45
90% 51
95% 73
98% 461
99% 1052
100% 1517 (longest request)
[root@ip-XXX-XXX-XXX-XXX html]#
次にnginxです。
[root@ip-XXX-XXX-XXX-XXX html]# ab -n 50000 -c 500 http://localhost:80/test.png
This is ApacheBench, Version 2.3 <$Revision: 1843412 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking localhost (be patient)
Completed 5000 requests
Completed 10000 requests
Completed 15000 requests
Completed 20000 requests
Completed 25000 requests
Completed 30000 requests
Completed 35000 requests
Completed 40000 requests
Completed 45000 requests
Completed 50000 requests
Finished 50000 requests
Server Software: nginx/1.18.0
Server Hostname: localhost
Server Port: 80
Document Path: /test.png
Document Length: 8106 bytes
Concurrency Level: 500
Time taken for tests: 2.666 seconds
Complete requests: 50000
Failed requests: 0
Total transferred: 417050000 bytes
HTML transferred: 405300000 bytes
Requests per second: 18755.86 [#/sec] (mean)
Time per request: 26.658 [ms] (mean)
Time per request: 0.053 [ms] (mean, across all concurrent requests)
Transfer rate: 152776.03 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 13 79.2 6 1035
Processing: 4 13 4.0 12 40
Waiting: 0 7 2.8 7 28
Total: 9 26 79.3 19 1047
Percentage of the requests served within a certain time (ms)
50% 19
66% 20
75% 21
80% 21
90% 28
95% 31
98% 39
99% 45
100% 1047 (longest request)
[root@ip-XXX-XXX-XXX-XXX html]#
最後にLiteSpeedです。
[root@ip-XXX-XXX-XXX-XXX html]# ab -n 50000 -c 500 http://localhost:8088/test.png
This is ApacheBench, Version 2.3 <$Revision: 1843412 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking localhost (be patient)
Completed 5000 requests
Completed 10000 requests
Completed 15000 requests
Completed 20000 requests
Completed 25000 requests
Completed 30000 requests
Completed 35000 requests
Completed 40000 requests
Completed 45000 requests
Completed 50000 requests
Finished 50000 requests
Server Software: LiteSpeed
Server Hostname: localhost
Server Port: 8088
Document Path: /test.png
Document Length: 8106 bytes
Concurrency Level: 500
Time taken for tests: 2.861 seconds
Complete requests: 50000
Failed requests: 0
Total transferred: 421350000 bytes
HTML transferred: 405300000 bytes
Requests per second: 17477.17 [#/sec] (mean)
Time per request: 28.609 [ms] (mean)
Time per request: 0.057 [ms] (mean, across all concurrent requests)
Transfer rate: 143828.24 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 10 48.1 8 1029
Processing: 6 19 14.5 17 423
Waiting: 0 11 14.6 10 418
Total: 12 28 50.3 25 1052
Percentage of the requests served within a certain time (ms)
50% 25
66% 27
75% 28
80% 29
90% 30
95% 31
98% 36
99% 73
100% 1052 (longest request)
[root@ip-XXX-XXX-XXX-XXX html]#
今回はパーセンタイルに注目してみます。
パーセンタイル
Apache | nginx | LiteSpeed |
---|---|---|
50% 35 | 50% 19 | 50% 25 |
66% 40 | 66% 20 | 66% 27 |
75% 43 | 75% 21 | 75% 28 |
80% 45 | 80% 21 | 80% 29 |
90% 51 | 90% 28 | 90% 30 |
95% 73 | 95% 31 | 95% 31 |
98% 461 | 98% 39 | 98% 36 |
99% 1052 | 99% 45 | 99% 73 |
100% 1517 | 100% 1047 | 100% 1052 |
Apacheは95%くらいまでは比較的よい性能にみえていますが、98%以上で性能の劣化がみられてきています。 一方、nginx・LiteSpeedは安定した処理性能を発揮しているようにみえます。nginxとLiteSpeedではあまり差異はみられません。
次回は測定対象のファイルを「小さいサイズの画像(約8K)」から「一般的なWEBコンテンツサイズのHTML(約60K)」に変更してみます。
興味深い結果については次のコラムでご報告します!