Apacheでmod_sslを試してみる
VirtualBoxにCentOSをとりあえずインストール
の続き
httpの場合
mac$ ab -c 100 -n 10000 http://192.168.56.101/
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.56.101 (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: Apache/2.2.15 Server Hostname: 192.168.56.101 Server Port: 80 Document Path: / Document Length: 5039 bytes Concurrency Level: 100 Time taken for tests: 13.423 seconds Complete requests: 10000 Failed requests: 0 Write errors: 0 Non-2xx responses: 10000 Total transferred: 52370000 bytes HTML transferred: 50390000 bytes Requests per second: 744.97 [#/sec] (mean) Time per request: 134.234 [ms] (mean) Time per request: 1.342 [ms] (mean, across all concurrent requests) Transfer rate: 3809.97 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 0.8 0 13 Processing: 8 133 45.0 128 2747 Waiting: 7 121 24.1 126 545 Total: 8 134 45.0 128 2752 Percentage of the requests served within a certain time (ms) 50% 128 66% 130 75% 132 80% 134 90% 169 95% 206 98% 246 99% 270 100% 2752 (longest request)
約13秒ほどかかる。
httpsの場合
$ ab -c 100 -n 10000 https://192.168.56.101/
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.56.101 (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: Apache/2.2.15 Server Hostname: 192.168.56.101 Server Port: 443 SSL/TLS Protocol: TLSv1,DHE-RSA-AES256-SHA,1024,256 Document Path: / Document Length: 5039 bytes Concurrency Level: 100 Time taken for tests: 76.488 seconds Complete requests: 10000 Failed requests: 0 Write errors: 0 Non-2xx responses: 10002 Total transferred: 52380474 bytes HTML transferred: 50400078 bytes Requests per second: 130.74 [#/sec] (mean) Time per request: 764.877 [ms] (mean) Time per request: 7.649 [ms] (mean, across all concurrent requests) Transfer rate: 668.77 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 70 442 138.3 413 1493 Processing: 1 322 110.4 333 747 Waiting: 1 130 66.5 112 617 Total: 118 764 113.3 746 1801 Percentage of the requests served within a certain time (ms) 50% 746 66% 756 75% 767 80% 784 90% 870 95% 964 98% 1117 99% 1218 100% 1801 (longest request)
約76秒ほどかかる。
100KBのHTMLの場合
100KBのHTMLだとどうなるか試してみる。
まず、100KBのHTMLを生成する。
$ sudo yum -y install php $ sudo chown ユーザー名:ユーザー名 /var/www/html $ cd /var/www/html $ php -r '$s=range("a","z"); for($i=0;$i<102400;$i++) echo $s[array_rand($s)];' > 100kb.html
httpの場合
$ ab -c 100 -n 10000 http://192.168.56.101/100kb.html
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.56.101 (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: Apache/2.2.15 Server Hostname: 192.168.56.101 Server Port: 80 Document Path: /100kb.html Document Length: 102400 bytes Concurrency Level: 100 Time taken for tests: 71.511 seconds Complete requests: 10000 Failed requests: 0 Write errors: 0 Total transferred: 1026750000 bytes HTML transferred: 1024000000 bytes Requests per second: 139.84 [#/sec] (mean) Time per request: 715.111 [ms] (mean) Time per request: 7.151 [ms] (mean, across all concurrent requests) Transfer rate: 14021.39 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 1 5.0 0 201 Processing: 13 713 186.6 716 3083 Waiting: 0 191 148.2 162 2490 Total: 13 714 186.5 716 3084 Percentage of the requests served within a certain time (ms) 50% 716 66% 775 75% 817 80% 843 90% 925 95% 1005 98% 1105 99% 1191 100% 3084 (longest request)
約71秒かかった。
httpsの場合
$ ab -c 100 -n 10000 https://192.168.56.101/100kb.html
$ ab -c 100 -n 10000 https://192.168.56.101/100kb.html 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.56.101 (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: Apache/2.2.15 Server Hostname: 192.168.56.101 Server Port: 443 SSL/TLS Protocol: TLSv1,DHE-RSA-AES256-SHA,1024,256 Document Path: /100kb.html Document Length: 102400 bytes Concurrency Level: 100 Time taken for tests: 125.218 seconds Complete requests: 10000 Failed requests: 0 Write errors: 0 Total transferred: 1026750000 bytes HTML transferred: 1024000000 bytes Requests per second: 79.86 [#/sec] (mean) Time per request: 1252.183 [ms] (mean) Time per request: 12.522 [ms] (mean, across all concurrent requests) Transfer rate: 8007.50 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 12 344 654.8 261 29723 Processing: 80 896 852.1 842 12290 Waiting: 1 185 411.1 156 10503 Total: 324 1240 1055.0 1121 30575 Percentage of the requests served within a certain time (ms) 50% 1121 66% 1203 75% 1261 80% 1304 90% 1422 95% 1566 98% 1822 99% 3709 100% 30575 (longest request)
約125秒かかった。