ApacheBench (abは実際のプログラム ファイル名) は、HTTP Webサーバーのベンチマーク(パフォーマンスの測定)に使用されるシングルスレッドのコマンドラインコンピュータプログラムです。[1]もともとはApache HTTP Serverの テストに使用されていましたが、HTTP/1.0またはHTTP/1.1プロトコルバージョンをサポートするすべてのWebサーバーをテストできるほど汎用的です。
このabツールはCで記述されており、標準の Apache ソース配布にバンドルされています。また、Apache Web サーバー自体と同様に、無料のオープン ソースソフトウェアであり、 Apache ライセンスの条件に基づいて配布されます。
歴史
元のプログラムはzb「ZeusBench V1.0」と名付けられ、1996 年に Adam Twiss ( Zeus Technology ) によってZeus Web Serverのパフォーマンスをテストするために作成されました。その後すぐに、Twiss はそのプログラムをApache Groupにライセンス (寄贈) したため、派生プログラムはab「ApacheBench」と名前が変更されました。
1997年以降、abApache HTTPサーバーに含まれるサポートプログラムとして、バージョン1.0(1997、1998)からバージョン2.3(2021)以降までさらに開発と保守が続けられてきました。[2]
使用例
ab -n 10000 -c 10 "http://localhost/index.html"
この例では、指定されたURLに対して10000件のHTTP GETリクエストが実行され、最大10件のリクエストが同時に処理されます。これには、 abが実行されるのと同じコンピューターのポート80でWebサーバーが実行されている必要があります。[3]http://localhost/index.html
出力の拡張例については、abSquid パフォーマンス チューニングの ab 出力も参照してください。
同時実行とスレッド
ApacheBenchは、同時実行 レベル(-cパラメータ)。場合によっては、特に大容量サーバーのベンチマークを行う場合、ApacheBench の単一のインスタンス自体がボトルネックになることがあります。複数のプロセッサ コアを備えたハードウェアで ApacheBench を使用する場合、ターゲット URL をより完全に飽和させるために、ApacheBench の追加インスタンスを並行して使用できます。
ApacheBenchの検出
ApacheBenchユーザーエージェント文字列はApacheBench/メジャー.マイナーここで、MAJORとMINORはプログラムのメジャーバージョン番号とマイナーバージョン番号を表します。[4]通常、 WebalizerやAWStats などのWebサーバーログアナライザーでは正しく分類されないため、ApacheBenchを多数のリクエストで実行すると、これらのプログラムによって生成されるレポートの結果が歪む可能性があります。
参照
参考文献
- ^ 「ab - Apache HTTP サーバー ベンチマーク ツール」。Apache。2014年10 月 9 日閲覧。
- ^ 「Apache HTTP Server: ab ソースコード、コメント」。Apache: HTTPd サーバー プロジェクト。2021 年。2021 年 12 月 20 日閲覧。
- ^ 「Apache Bench を使用した簡単な負荷テスト」。Pete Freitag の ColdFusion、Java、Web 開発ブログ。2014年10 月 9 日閲覧。
- ^ 「User-agent detail: AB (Apache Bench) output」. User-Agent-String-Info . 2014年10月9日閲覧。
外部リンク
- 「ab」ツールのマニュアルページ
- Apache HTTPD 公式サイト
