将来の計画のために、ストレス下でWebサーバーが処理できるトラフィックの量を知ることが不可欠です。開発者およびITプロフェッショナルとして、負荷テストはWebサイトとインフラストラクチャの容量を決定するための最も重要なタスクです。 jMeter、gatling、Apacheベンチ、Siegeなど、現在利用可能な多くの負荷テストツールがあります。この記事では、siegeを使用してWebサーバーの負荷をテストする方法を学習します。
Siegeは、ストレス下のWebサーバーのパフォーマンスを測定するための人気のあるHTTP負荷テストおよびベンチマークユーティリティツールの1つです。 Webサーバーの応答時間、トランザクションレート、転送されるデータ、同時実行性、スループットを評価するために使用できます。
SiegeLoadテストツールのインストール
包囲ベンチマークツールのインストールは、シンプルで簡単なプロセスです。以下の手順に従って、Linuxシステムにユーティリティツールをインストールします。
Ubuntu / Debian
$ apt install siege
RHEL / CentOS
$ yum install epel-release $ yum install siege
ソースコードからインストール
ソースコードをコンパイルしてLinuxシステムにアプリケーションをインストールする場合は、以下の手順に従ってください。
ビルドエッセンシャルパッケージと開発パッケージをインストールして、ソースコードをビルドします。
$ apt install build-essential [Ubuntu/Debian] $ yum install groupinstall ‘Development Tools’ [CentOS/RHEL]
wgetコマンドを使用してsiegeソースコードをダウンロードします。
$ wget http://download.joedog.org/siege/siege-latest.tar.gz
tarコマンドを使用してソースコードを抽出します
$ tar -xvzf siege-latest.tar.gz
次のコマンドを使用してアプリケーションをビルドします。
$ cd siege-*/ $ ./configure --prefix=/usr/local --with-ssl=/usr/bin/openssl $ make && make install
SiegeLoadテストツールの構成
インストールが完了したら、次にsiege構成を調整する必要があります。ソースコードからパッケージをビルドした場合は、次のコマンドを実行します。
$ siege.config
出力:
構成ファイルは、ユーザーのホームディレクトリ〜/ .siege/siege.confにあります。次のコマンドを使用して、構成ファイルの内容を検索します。
$ cat siege.conf | egrep -v “^$|#”
現在の構成では、25人の同時ユーザーがWebサーバーの負荷をテストするために開始されます。
Siegeツールを使用したWebサイトの負荷テストのテスト
包囲戦の使用は非常にシンプルで簡単です。 Webサイトの名前を指定し、次のようにコマンドを実行するだけです:
$ siege linuxways.com
出力:
この例では、5人の同時ユーザーが1分間使用されています。接続の問題が発生せずに可用性が100%のままである場合、Webサーバーは良好な状態です。また、トラフィックを処理するWebサーバーの容量を評価するために、応答時間と成功したトランザクションに注意してください。
複数のWebサイトでの負荷テスト
一度に複数のURLで負荷テストを実行する必要がある場合があります。このためには、URLを含むテキストファイルを作成し、filenameを次のように指定してsiegeコマンドを実行します。
$ cat urls.txt $ siege -f /root/urls.txt
出力:
Siegeには、負荷テストの実行中にさまざまな設定を使用するための多くのコマンドラインオプションが用意されています。
-c –同時ユーザーの数
-b –リクエスト間の遅延なし
-l –ログファイル
-H –リクエストするヘッダーを追加します
-r –テストを実行する回数
-f –指定されたファイルからURLをテストします
-t –テストを実行する時間
結論
この記事では、siegeベンチマークツールを使用してWebサーバーの負荷をテストする方法を学びました。また、siegeベンチマークツールを使用してURLファイルを作成する複数のWebサイトで負荷をテストする方法についても説明しました。