Apache Bench で Web ストレス テストを実装する方法

Apache Bench で Web ストレス テストを実装する方法

1. Apache Benchの紹介

ApacheBench は、Apache サーバーに付属する Web ストレス テスト ツールで、ab と呼ばれます。 ab は、負荷を開始するローカル マシンに対する要件が非常に低いコマンド ライン ツールでもあります。ab コマンドを使用すると、多数の同時アクセス スレッドを作成して、複数の訪問者が同時に特定の URL アドレスにアクセスすることをシミュレートできます。そのため、対象サーバーの負荷圧力をテストするために使用できます。一般的に、ab ツールは小さくてシンプルで、習得しやすく、必要な基本的なパフォーマンス指標を提供できますが、グラフィカルな結果は得られず、監視もできません。

2. Apache Benchのインストール

まず、Apache サーバーをインストールする必要があります。ダウンロード アドレス: https://www.apachelounge.com/download/。64 ビット オペレーティング システムの場合は、上記の圧縮パッケージのいずれかを選択します。

インストール

ウブントゥ

1: aptを使用してオンラインでインストールします: sudo apt install apache2-utils

2: インストールが成功したかどうかを確認します: ab -V

共通パラメータの説明

テストレポートの解釈

(1)100件のクライアントリクエストをシミュレートする:

ab -n 100 http://www.example.com/

(2)100件のクライアントリクエストを10,000回シミュレートする:

ab -n 10000 -c 100 http://www.example.com/

(3)POSTメソッドインターフェースを10回呼び出すと、送信されるデータ形式はJSONになります。

ab -n 10 -p jsonファイル http://www.example.com/

(4)OPTIONSメソッドインターフェースを10回呼び出します。

ab -n 10 -m オプション http://www.example.com/

(5)各リクエストに対する応答情報を出力する。

ab -n 10 -v 2 http://www.example.com/

予防

  • -H Content-Type を使用すると、Content-Type ヘッダーを指定するための -T Content-Type が置き換えられることはありません。
  • ab: invalid URL というメッセージが表示される場合は、URL の右端の / が欠落している可能性があります。たとえば、http://www.example.com は http://www.example.com/ に変更する必要があります。
  • ストレス テストの HTTP インターフェイスが結果を返すことで成功したかどうかを判断する場合 (応答できる限り、200 ステータス コードを返します)、失敗したリクエストを識別する方法を自分で見つける必要があることに注意してください。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Apache Bench ストレステストツールの実装原理と使用状況分析
  • Apache ab同時負荷ストレステストの実装方法
  • Apache abツールを使用してApacheサーバーで簡単なストレステストを実行します。
  • Apache ストレステストと Web パフォーマンス最適化に関する一般的な知識のまとめ
  • Apache ab ツールページストレステストの戻り結果の解釈
  • Apache ストレステストツールのインストールと使用

<<:  myisamchk および mysqlcheck ツールを使用して破損した MySQL データベース ファイルを迅速に修復する方法

>>:  特殊効果メッセージボックスを実現するネイティブJS

推薦する

Vueカウンターの実装

目次1. カウンターの実装2. 成果を達成する1. カウンターの実装ページにカウンターを実装するだけ...

JS 非同期スタック トレース: await が Promise よりも優れている理由

概要async/await と Promise の基本的な違いは、await fn() は現在の関数...

MySQL 演算子の具体的な使用法 (and、or、in、not)

目次1. はじめに2. 本文2.1 および演算子2.2 または演算子2.3 オペレーター2.4 no...

MySQL ジョイントテーブル更新デー​​タの詳細な例

1.MySQL UPDATE JOIN構文MySQL では、UPDATE ステートメントでJOIN句...

HTML ウェブページ画像タグ

画像タグ <IMG> を挿入します。今日私たちが目にするカラフルなウェブページはすべて、...

Vue におけるキープアライブ マルチレベル ルーティング キャッシュの問題

目次1. 問題の説明2. 原因分析3. 解決策4. 処理1. 問題の説明調整センターでは、最後の 2...

JavaScript リフレクション学習のヒント

目次1. はじめに2. インターフェース3. 簡単な例4. 結論1. はじめにMDN の公式 Web...

KVM 仮想マシンのオンライン ホット マイグレーションを実装する方法 (画像とテキスト)

1. KVM仮想マシンの移行方法と注意すべき点KVM 仮想マシンを移行する方法は 2 つあります。...

js でクラスセレクターと名前属性セレクターを実装する手順の例

jQuery の登場により、DOM の操作効率が大幅に向上し、開発がより高いレベルに引き上げられまし...

mysql 変数の使用例の分析 [システム変数、ユーザー変数]

この記事では、例を使用して MySQL 変数の使用方法を説明します。ご参考までに、詳細は以下の通りで...

Docker 経由で Redis 6.x クラスターをデプロイする方法

システム環境: Redis バージョン: 6.0.8 Docker バージョン: 19.03.12シ...

Vue3 コンポジション API の紹介

目次概要例なぜそれが必要なのでしょうか?設定参照、反応的計算して見るライフサイクルVue3.0 は ...

vue-video-player でのブレークポイント再開の実装

最近のプロジェクトでは、ブレークポイントからビデオの再生を再開する機能を実装する必要がありました。こ...

モバイルウェブページのサイズ調整を実装する方法

ようやく手元のプロジェクトが終了し、行方不明だった人たちが戻ってきました!プロジェクトを進める過程で...

Docker イメージを削除できません エラー: そのようなイメージはありません: xxxxxx 解決策

序文docker イメージを削除できません。docker docker imagesを確認すると、イ...