ab コマンドの原理
Apache の ab コマンドは、マルチスレッドの同時リクエストをシミュレートし、サーバーの負荷圧力をテストし、nginx、lighthttp、IIS などの他の Web サーバーの負荷もテストできます。
Apache に付属の ab ツール (使用される PHP 環境は WAMP 統合環境であり、ab ツールは D:wampbinapacheApache2.2.21bin にあります) は非常に使いやすいです。 ab コマンドは、負荷を発行するコンピュータにあまり要求されませんが、多くの CPU やメモリを占有することはありませんが、ターゲット サーバーに多大な負荷を与えるため、一部の DDOS 攻撃には必要な薬となります。老若男女すべての人に適しています。自分で使う場合にも注意が必要です。そうしないと、一度に過大な負荷がかかり、メモリ不足によりターゲット サーバーがクラッシュし、ハード再起動が必要になりますが、これは損失に値しません。
帯域幅が不十分な場合は、イントラネット上の別のサーバーまたは複数のサーバーを使用して、イントラネット経由でテストすることをお勧めします。この方法で取得したデータは、より正確になります。 Web サーバーのリモート ストレス テストでは、(過剰なネットワーク遅延または帯域幅不足が原因で) 満足のいく結果が得られないことがよくあります
ダウンロードしてインストールします:
;O=A
httpd-2.2.21-win32-x86-no_ssl.msi を見つけます
パラメータドキュメント:
実行:
Windows システムで、cmd コマンド ライン ウィンドウを開き、Apache インストール ディレクトリの bin ディレクトリに移動します
cd C:Program Files (x86)Apache Software FoundationApache2。
コマンドを入力します:
ab -n 800 -c 800 http://192.168.0.10/
(-n は 800 リクエストを発行し、-c は 800 人の同時アクセスをシミュレートします。これは同時に 800 人がアクセスすることに相当します。テスト URL)
ab -t 60 -c 100 http://192.168.0.10/
60 秒以内に一度に 100 リクエストを送信します。
//URL にパラメータを含める必要がある場合は、次のようにします
ab -t 60 -c 100 -T "text/plain" -p p.txt http://192.168.0.10/hello.html
p。 txt はい パラメータは ab.exe
p.txt と同じディレクトリに書き込むことができます (p=wdp&fq=78 など)
Result パラメータの説明:
これは ApacheBench、バージョン 2.3
著作権 1996 Adam Twiss、Zeus Technology Ltd、
Apache Software Foundation にライセンス供与、
ベンチマーク 192.168.0.10 (しばらくお待ちください)
100 件のリクエストを完了しました
200 件のリクエストを完了しました
300 件のリクエストを完了しました
リクエストを400件完了しました
500 件のリクエストを完了しました
600 件のリクエストを完了しました
700 件のリクエストを完了しました
800 件のリクエストを完了しました
サーバー ホスト名: 192.168 0 を表しますリクエストされた URL のホスト名
サーバー ポート: 80 テストされた Web サーバー ソフトウェアのリスニング ポートを表します
ドキュメントの長さ: 315 バイトは、HTTP 応答データの本文の長さを表します
同時実行レベル: 800 設定したパラメーターの 1 つである同時ユーザーの数を表します
テストにかかった時間: 0.914 秒 これらすべてのリクエストが処理されるのにかかる時間
完了したリクエスト: 800 完了したリクエストの数
失敗しましたリクエスト: 0 0 失敗したリクエスト
書き込みエラーの数: 0
非 2xx レスポンス: 800
合計転送数: 393600 バイト 合計ネットワーク転送数
転送された HTML 数: 252000 バイト 転送された HTML コンテンツ
1 秒あたりのリクエスト数: 875.22 [#/sec] (平均) スループット - 1 秒あたりのリクエスト数
リクエストあたりの時間: 914.052 [ms] (平均) サーバーがリクエストを受信してページに応答するまでにかかる時間
リクエストあたりの時間: 1.143 [ms] (平均、全体すべての同時リクエスト) 各同時リクエストの平均 消費時間
転送速度: 420.52 [Kbytes/sec] 受信 1 秒あたりのネットワーク上の平均トラフィック。これは、応答時間の延長につながる過剰なネットワーク トラフィックの問題があるかどうかを排除するのに役立ちます。
ネットワークに費やした時間の内訳:
接続時間 (ミリ秒) 最小 平均[+/-SD] 中央値 最大
接続: 1 0.5 1 3
処理中: 245 534 125.2 570 682
待機中: 11 38 6 189.1 409シーン全体で 669
合計: 246 535 125.0 571 684
すべてのリクエストの応答ステータス。このシナリオでは、各リクエストの応答時間は
ユーザーの 50% の応答時間は 571 ミリ秒未満
ユーザーの 80% の応答時間は 652 ミリ秒未満
最大応答時間は 684 ミリ秒未満
一定時間内に処理されたリクエストの割合 (ms) 50% 571 66% 627 75% 646 80% 652 90% 666 98% 677 98%
99% 682
100% 684 (最長リクエスト)
この部分たとえば、上記のテストでは、リクエストの処理時間の 80% が 6ms を超えていません。この処理時間は、1 回のリクエストあたりの時間を指します。ユーザー、各リクエストの平均処理時間。
以上がApacheのabツールの使用例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。