[Apache] Apache Bench 入門

Apache Benchを使う必要があったので入門。

インストール

httpdに同梱されているので、httpdをインストールすれば一緒に入る。

使い方

キーになるオプションは以下の2つ。

  • -n <数字> 総リクエスト数
  • -c <数字> 同時リクエスト数

例えば100ユーザが同時に10回リクエストする場合、総リクエスト数は100×10=1000になるので以下のようになる。その他のオプションは参考サイトを見るべし。

Basic認証が掛かっているサイトの場合は -A オプションを指定する。

  • -A ユーザ名:パスワード

結果の見方

リクエストは正常に処理されたのか?

  • Complete requests (正常に処理されたリクエスト数)
  • Failed requests (処理に失敗したリクエスト数)

パフォーマンスを評価する

  • Requests per second (1秒間にさばけるリクエスト数)
  • Time per request(mean, across all concurrent requests) (1リクエストあたりの処理時間)
  • ちなみに Time per request(mean) は全リクエストの処理時間

サーバーの限界点を探す

  • -n と-c の値を徐々に増やす
  • Failed requestsが0で無くなったところがWebサーバーの負荷の限界

参考サイト

【初心者向け】ApacheBench入門 | DevelopersIO
https://dev.classmethod.jp/tool/ab-tutorial/

Apache Benchでサクッと性能テスト – Qiita
https://qiita.com/flexfirm/items/ac5a2f53cfa933a37192

Apache Bench(ab)を使って初めての負荷検証を行う – Simple IT Life
https://simple-it-life.com/2016/08/28/apache-bench/