abコマンドはレスポンスのバイト数が変わるとFailedとしてレポートする

Webアプリケーションなど動的なページに対してabコマンドを実行すると、 リクエスト間でバイト数が異なるとFailedとしてレポートされる。

例えば適当なアプリを作って以下のように2クライアントで10アクセスしてみる。

$ ab -n 10 -c 2 http://localhost:3000/

するとFailed requestsが9、Lengthが9となっている。

...
Complete requests:      10
Failed requests:        9
   (Connect: 0, Receive: 0, Length: 9, Exceptions: 0)
...

-l オプションを使用する

abコマンドの-lオプションをつけるとバイト数の違いはFailedとしてレポートされなくなる。

例えば以下のように-lオプションをつける。

$ ab -n 10 -c 2 -l http://localhost:3000/

するとFailedは0となる。

...
Failed requests:        0
...