Apache Bench

通称「ab」と呼ばれている性能テストツール、Apache Bench について紹介します。実行結果の出力方法は、CSVとHTMLで行うことができ、標準的な出力が可能です。本ツールの特徴や注意点を詳しくまとめていますので、興味のある方はぜひ参考にしてみてください。


Apache Benchの特徴

よりリアルな形で性能テストを実施可能

Apache Bench は、Webサーバーやアプリケーションサーバのテストに活用するととても効果的であることが特徴です。1回のコマンド実行で、単一のURLに対するリクエストを指定分のみ生成できるからです。またテストする対象が動的に生成されるページであっても、URLを固定しておくことで適用させることができるので、とても便利です。

またテストを行う際には、インターネット環境やLAN環境を経由させることで、よりリアルに近い形態でのシミュレートを可能にします。

シンプルなテストを実行できる

Apache Bench のテスト内容は、指定したURLに対して高い頻度で連続アクセスを行うことです。対象にできるURLは1つのみであるため、何個も設定してテストをすることが難しいですが、TOPページをはじめとしたアクセスが多いとわかっているページや高負荷がかかっていると考えられるページが、どれだけのアクセスに耐えられるかを検証することができます。

パフォーマンス低下に悩んだら、「改善提案型」負荷テストサービスに任せよう

社内の少数メンバーで使う小規模なシステムや、単発で済む程度の負荷テストであれば、フリーの負荷テストツールでも十分です。ただし負荷は一度解消したからといって二度と発生しないわけではなく、アップデートの度にテストが必要になるケースも多いのが実情。

負荷テストサービス会社の中には、検出したバグを分析した上で改善アクションまで踏み込んでくれるところがあります。同じ依頼をするなら、こういった改善までできる会社がおすすめです。というのも、エンジニアが本来の開発に集中でき、自動的に不具合やバグの報告が上がり適宜改善してくれる仕組みこそが、理想の開発環境と言えるからです。

当サイトでおすすめしている3社は、すべてこの要件を満たしています。あなたが抱えている課題を、それぞれの会社が持つ「独自の強み」で解決してくれますので、ぜひ依頼先選びの参考にしてみてください。

改善アクションまで任せられる
負荷テストサービス会社 3選を見る

ApacheBench (ab) の主要オプション一覧

オプション 説明
-n <数値> 合計リクエスト数を指定。テスト全体で発行するHTTPリクエストの総数を設定。
例: -n 1000 で1000回のリクエストを送る。
-c <数値> 同時並列数を指定。一度に何リクエスト分の接続を張るか設定。
例: -c 50 で一度に50接続。
-t <秒数> サーバーからのレスポンス待ち時間を秒数で指定。タイムアウト時間設定。
-A <ユーザ:パスワード> ベーシック認証がかかっているページに対してテストを行う場合に、認証情報を指定。
-P <プロキシユーザ:パスワード> 認証付きプロキシを経由してリクエストを投げる場合に指定。
-X <プロキシ:ポート> プロキシ経由でテストする場合に指定。-X proxy.example.com:8080 のような形。
-e <ファイル名> 結果をCSV形式(ヘッダー付き)でファイルに出力。Excelなどで分析する際に便利。
-v <レベル> デバッグ出力レベルを指定(詳細なHTTPヘッダーなどを表示)。
-h ヘルプを表示。利用可能オプションの一覧が確認できる。

Apache Bench利用の注意点

大規模なテストにはおすすめしない

Apache Benchでは単一しかURLが使えないので、大きな負荷を発生させてしまうと、CPUが足を引っ張ってしまう恐れがあります。また、負荷のボリュームが少ない時にはうまく実行できますが、大規模な性能テストで用いるにはおすすめしません。

シナリオベースのテストには不向き

Apache Benchは、単一のURLへのリクエストを生成するツールであり、シナリオを生成して行うテストには向いていない点が注意すべきところです。リアルのWebサイトであれば、ユーザシナリオが多数存在することが多いです。つまり複数のURLをテストする必要性が出てくるのですが、本ツールでは対応することができません。

また、静的なWebサイトに対するテストを行う際にも注意が必要です。ページにCSSや画像が埋め込まれていた場合、それらを読み込むのに時間を要してしまい、意図しているテストを実施できない可能性があるからです。

改善までお任せできる
負荷テストサービス3選

負荷テストサービス会社は数多くありますが、それぞれ得意とする領域は違います
原因特定力が高くスピーディに解決できる会社もあれば、アフターサポートが手厚い大手ソフトウェアテスト会社、インフラレベルの大規模テスト実績が豊富な会社など、強みも様々。
ここでは代表的な3つのニーズに分けて、おすすめの会社を紹介しています。

2週間でトラブルの原因特定
スピーディな負荷改善
を求めるなら
Airitech
おすすめの理由
  • トラブルシュートに強く、たった2週間で不具合を特定できる
  • 必要があれば前工程の性能改善に踏み込み、テストを実施してくれる
  • 多様な観点からシナリオを提示し、検証後の実装まで動いてくれる

\スピーディな負荷改善/

原因特定が早い
Airitechの負荷テストを
公式サイトで詳しく見る

Airitechの負荷テストについて
電話で問い合わせる

Airitechの負荷テスト
についてもっと詳しく見る

幅広いケースの改善実績あり
大手の安心サポート
を求めるなら
SHIFT
おすすめの理由
  • 改善実績が豊富で、自身のケースにおける適切な解答が分かる
  • 土日祝も対応の手厚いサポートで、安定稼働を実現できる
  • 第三者検証の老舗だから、複合的な機能テストも依頼できる

\安心サポート/

安定稼働を徹底サポート
SHIFTの負荷テストを
公式サイトで詳しく見る

SHIFTの負荷テストについて
電話で問い合わせる

SHIFTの負荷テスト
についてもっと詳しく見る

インフラレベルの不具合も改善大規模高負荷テスト
を求めるなら
ディーネット
おすすめの理由
  • JMeterのマスタ・スレーブ構成により、大規模負荷テストができる
  • 運用代行がメインの会社だから、テスト後の環境安定化に強い
  • 高負荷障害や大規模インフラなど、長大テストの改善にも対応できる

\大規模&高負荷/

大規模環境に強い
ディーネットの負荷テスト
を公式サイトで詳しく見る

ディーネットの負荷テストについて
電話で問い合わせる

ディーネットの負荷テスト
についてもっと詳しく見る

改善アクションまで
任せられる
負荷テストサービス会社3選を見る