負荷テストを実施する
06
- 3月
2018
Posted By : boomin
負荷テストを実施する
Advertisements

狸の皮算用

アクセスいっぱいだったらどうしよう。
ってことで、nginxのチューニングを行って、負荷テストを行い、意図通りの接続数になっているかどうかなどを確認。

負荷掛けのツールを準備

ApacheBenchを使うことにする。
もちろん、測定対象のサーバの外から実施しないと意味がない。

そこで、自宅のWindows10 subsystem for linuxにサクッと導入する。

apt-get install apache2-utils

さっそく実行する

user@host:~$ ab -n 1000 -c 100 https://target.host.com
This is ApacheBench, Version 2.3 <$Revision: 1706008 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking target.host.com (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests
Completed 800 requests
Completed 900 requests
Completed 1000 requests
Finished 1000 requests


Server Software:        nginx
Server Hostname:        target.host.com
Server Port:            443
SSL/TLS Protocol:       TLSv1.2,ECDHE-RSA-AES128-GCM-SHA256,2048,128

Document Path:          /img
Document Length:        178 bytes

Concurrency Level:      100
Time taken for tests:   3.722 seconds
Complete requests:      1000
Failed requests:        990
   (Connect: 0, Receive: 0, Length: 990, Exceptions: 0)
Non-2xx responses:      1000
Total transferred:      451740 bytes
HTML transferred:       207884 bytes
Requests per second:    268.65 [#/sec] (mean)
Time per request:       372.233 [ms] (mean)
Time per request:       3.722 [ms] (mean, across all concurrent requests)
Transfer rate:          118.52 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:      127  324  39.8    323     502
Processing:    23   30  12.3     27     224
Waiting:       22   29  12.3     27     223
Total:        219  354  34.5    351     547

Percentage of the requests served within a certain time (ms)
  50%    351
  66%    357
  75%    362
  80%    366
  90%    379
  95%    394
  98%    468
  99%    498
 100%    547 (longest request)

うん、同一IPからの同時アクセス数と、サーバへの秒間あたりの総接続数の上限を設定したので、
全ての接続が有効にならず、失敗しているものがかなり出てきている。

うんこれでよい。

Advertisements
Category:

コメントを残す