GNU/Linux >> Linux の 問題 >  >> Linux

RHEL8にapacheベンチをインストールする方法

Apache Benchは、Webサービスの応答時間、つまりWebサーバーのパフォーマンスをテストするための便利な小さなツールです。このツールの設定のいくつかを挙げれば、送信するリクエストの数、ターゲットURL、同時実行性の設定を指定できます。

このようなシミュレートされたワークロードは、実際のトラフィックとまったく同じデータにはなりませんが、本番環境に移行する前にテストすることをお勧めします。たぶん、アプリケーションの新しいバージョンをデプロイする前に、新しいバージョンでテストを実行し、結果を以前のテストデータと比較して、アプリケーションの処理が前のバージョンよりも遅いか速いかを確認できます。十分に計画されたテストにより、このツールはアプリケーションの潜在的なボトルネックを示すことができ、可能な最適化のためにコードを調べる必要がある興味深いポイントを提供する可能性があります。

このチュートリアルでは、Red Hat Enterprise Linux8にApacheBenchをインストールし、ApacheWebサーバーをインストールしていくつかのテストを実行します。

このチュートリアルでは、次のことを学びます。

  • ApacheBenchのインストール方法
  • httpd Webサーバーをインストールし、いくつかの基本的なコンテンツを追加する方法
  • ウェブサーバーに対して簡単なテストを実行する方法

ApacheBenchを使用してローカルWebサーバーに対してパフォーマンステストを実行します。

使用されるソフトウェア要件と規則

システム ソフトウェア その他 規約
ソフトウェア要件とLinuxコマンドラインの規則
カテゴリ 使用する要件、規則、またはソフトウェアバージョン
Red Hat Enterprise Linux 8
Apache Bench 2.3
rootまたはsudoを介したLinuxシステムへの特権アクセス コマンド。
–指定されたLinuxコマンドは、rootユーザーとして直接、または sudo を使用して、root権限で実行する必要があります。 コマンド
$ –特定のLinuxコマンドを通常の非特権ユーザーとして実行する必要があります

Redhat8にapacheベンチをインストールする方法ステップバイステップの説明

Apache Benchは、Apache httpd とともにサブスクリプション管理リポジトリを有効にした後、ベースソフトウェアソースで利用できます。 Webサーバー。ツールを試すために、静的なコンテンツと phpで記述されたコンテンツの両方をウェブサーバーに追加します。 。

  1. httpd-toolsにあるApacheBenchをインストールするには パッケージでは、 dnfを使用します :
    # dnf install httpd-tools
  2. テスト環境を作成するには、 abを使用します ツールをオンにして、phpをサポートするウェブサーバーをインストールします:
    # dnf install httpd php
  3. 静的なHTMLページを追加します/var/www/html/index.html 次の内容で:
    <html>
    <head>
    <title>Title of the webpage</title>
    </head>
    <body>
    <p>This is a simple html page.</p>
    </body>
    </html>

    そして、同じコンテンツになるが、意図的に無駄な方法でphpで書かれている別のページ。ファイルは/var/www/html/index.phpになります 、以下の内容で:

    <?php
    echo "<html>\n";
    echo "<head>\n";
    echo "<title>Title of the webpage</title>\n";
    echo "</head>\n";
    echo "<body>\n";
    echo "<p>This is a simple html page.</p>\n";
    echo "</body>\n";
    echo "</html>\n";
    ?>

    静的テキストを提供するため、必要な echoは1つだけであることに注意してください。 、またはphpがまったくありません。このページは、応答時間の違いを確認するためにのみ作成されています。

  4. Webサーバーを起動できます:
    # systemctl start httpd
  5. rootは必要ありません ベンチマークの特権。最初のテストでは、 abを実行します 静的ページindex.htmlに対して 、最大60秒(-t)の時間枠内で、10個の同時スレッド(-c)でページに100000要求(-n)を提供します。ラボマシンでは、この量のリクエストは1分で処理されますが、ハードウェアによってはこれでは不十分な場合があります。また、ローカルホストからベンチマークを実行することで実際のネットワークトラフィックを排除し、リクエストの実行と同じハードウェアでのサービス提供の両方の負荷をプッシュしていることにも注意してください。
    $ ab -t 60 -n 100000 -c 10 http://localhost/index.html
    This is ApacheBench, Version 2.3 <$Revision: 1826891
    
    
    
    
     

    gt;
    Copyright 1996 Adam Twiss、Zeus Technology Ltd、http://www.zeustech.net/
    Apache Software Foundationにライセンス供与、http://www.apache.org/

    localhostのベンチマーク(しばらくお待ちください)
    10000リクエストを完了しました
    20000リクエストを完了しました
    30000リクエストを完了しました
    40000リクエストを完了しました
    50000リクエストを完了しました
    60000リクエストを完了しました
    70000リクエストを完了しました
    80000リクエストを完了しました
    90000リクエストを完了しました
    100000リクエストを完了しました
    100000リクエストを完了しました

    サーバーソフトウェア:Apache / 2.4.35
    サーバーホスト名:localhost
    サーバーポート:80

    ドキュメントパス:/index.html
    ドキュメントの長さ:116バイト

    同時実行レベル:10
    テストにかかった時間:19.556秒
    完了したリクエスト:100000
    失敗したリクエスト:0
    転送された合計:39600000バイト
    転送されたHTML:11600000バイト
    1秒あたりのリクエスト数:5113.63 [#/ sec](平均)
    リクエストあたりの時間:1.956 [ms](平均)
    リクエストあたりの時間:0.196 [ms](平均、すべての同時リクエスト全体)
    転送速度:1977.53[キロバイト/秒]を受信

    接続時間(ミリ秒)
    最小平均[+/- sd]中央値最大
    接続:0 0 0.2 0 3
    処理:0 2 0.8 2 26
    待機:0 1 0.7 1 26
    合計:0 2 0.8 2 26

    特定の時間内に処理されたリクエストの割合(ミリ秒)
    50%2
    66%2
    75%2
    80%2
    90%3
    95%3
    98%4
    99%5
    100%26(最長のリクエスト)

  6. 2番目のテストは、同じパラメーターセットを使用して実行されますが、無駄なphpページ index.phpに対して実行されます。 。
    $ ab -t 60 -n 100000 -c 10 http://localhost/index.php  
    This is ApacheBench, Version 2.3 <$Revision: 1826891
    
    
    
     

    gt;
    Copyright 1996 Adam Twiss、Zeus Technology Ltd、http://www.zeustech.net/
    Apache Software Foundationにライセンス供与、http://www.apache.org/

    localhostのベンチマーク(しばらくお待ちください)
    10000リクエストを完了しました
    20000リクエストを完了しました
    30000リクエストを完了しました
    40000リクエストを完了しました
    50000リクエストを完了しました
    60000リクエストを完了しました
    70000リクエストを完了しました
    80000リクエストを完了しました
    90000リクエストを完了しました
    100000リクエストを完了しました
    100000リクエストを完了しました

    サーバーソフトウェア:Apache / 2.4.35
    サーバーホスト名:localhost
    サーバーポート:80

    ドキュメントパス:/index2.php
    ドキュメントの長さ:116バイト

    同時実行レベル:10
    テストにかかった時間:35.064秒
    完了したリクエスト:100000
    失敗したリクエスト:0
    転送された合計:30700000バイト
    転送されたHTML:11600000バイト
    1秒あたりのリクエスト数:2851.89 [#/ sec](平均)
    リクエストあたりの時間:3.506 [ms](平均)
    リクエストあたりの時間:0.351 [ms](平均、すべての同時リクエスト全体)
    転送速度:855.01[キロバイト/秒]を受信

    接続時間(ミリ秒)
    最小平均[+/- sd]中央値最大
    接続:0 0 0.2 0 3
    処理:1 3 1.2 3 27
    待機:0 3 1.2 3 27
    合計:1 3 1.3 3 28

    特定の時間内に処理されたリクエストの割合(ミリ秒)
    50%3
    66%4
    75%4
    80%4
    90%5
    95%6
    98%7
    99%7
    100%28(最長のリクエスト)
    結果が示すことは大きな驚きではありません。静的コンテンツは、phpインタープリターを通過する必要がある無駄なページよりもはるかに高速に提供されます。これにより、ApacheBenchツールを使用してWebサービスの応答時間に関する統計を収集する方法を簡単な例で示しました。


Linux
  1. Linux RHEL 8 /CentOS8にapachetomcatをインストールする方法

  2. Apache Maven CentOS 7 /RHEL7をインストールする方法

  3. UbuntuにApacheをインストールするにはどうすればいいですか?

  1. RHEL 8 / CentOS8LinuxにApacheをインストールする方法

  2. RHEL8にsparkをインストールする方法

  3. RHEL8にActiveMQをインストールする方法

  1. RHEL8にcassandraをインストールする方法

  2. RHEL8にcomposerをインストールする方法

  3. RHEL8にgdbをインストールする方法