Tool

[Apache][Test] Apache Benchを使った負荷テスト

Webサーバーの負荷テストならまず ab((Apache Bench)の略)だという。

1. インストール

Macの場合

MACの方は標準でインストールされている。
OS X Lionではバグがあり動作しないようで、
こちらの記事を確認。

Windowsの場合

Step1. xamppをインストール。
Step2. xampp のインストールフォルダに入る: cd C:\xampp\apache\bin\
Step3. abコマンドを実行。

2. abコマンドの構文

$ ab [-OPTION] URL

OPTIONman ab コマンドで確認できる。

3. 負荷テストのやりかた

一番簡単な実行方法

ab -n [総リクエスト数] -c [同時リクエスト数] [URL]

同時10接続で、100リクエスト発行するならこうなる。

ab -n 100 -c 10 http://example/test.php

実行結果の見方

実行結果のレポート情報の中で、まずは下記の2つを確認しておくと良い。

  • Failed Requests:失敗したリクエスト数。これが発生している場合は、サーバが処理できる能力を超えている。
  • Requests per second:1秒あたりに処理したリクエスト数。

サーバーの限界を測定するには、
「Failed Requests」が0、「Request per second」がより大きい数値になるようにチューニングする。

:weary: 自動的にチューニングしてくれるOPTIONがあればなあ。

  • CSVファイルとして出力

eオプション(exportの略称だよね)をつけると、
CSVファイルとして出力可能。

ab -n 100 -c -e result.csv 10 http://example/test.php

4. できるとできないこと

  • 1回の実行で単一のURLに対してリクエスト
  • シナリオベース(複数の一連の)のテストはできない

複数のURLに対して負荷を生成したい場合は、下記のようなツールがある。

  • Apache JMeter
  • httperf
  • weighttp

参考

Apache Benchを使った負荷テストのやり方


https://qiita.com/mmmm/items/f31b15b4f80427360207

【初心者向け】ApacheBench入門

コメントを残す