一般的に使用されるいくつかの圧力測定ツールの紹介と使用

市場には無数の圧力測定ツールが存在するので、一般的に使用されているものをいくつか簡単に紹介します。

1、Apache ab


abは、Apacheに付属のストレステストツールで、非常に便利です。

インストール


1. Ab操作はapr-utilパッケージに依存する必要があります。インストールコマンドは次のとおりです。

yum install apr-util

2.ダウンロードするには、yumdownloadコマンドが必要です。このコマンドを使用しないと、次のことができます。

yum install yum-utils

3.ダウンロードおよび解凍用の新しいディレクトリを作成します。

cd /opt

mkdir abtmp

cd abtmp

yum install yum-utils.noarch

yumdownloader httpd-tools*

rpm2cpio httpd-tools*.rpm | cpio -idmv

4. ./user/bin/abをシステムビンにコピーします。

cp /opt/abtmp/usr/bin/ab /usr/bin

5.次のコマンドを使用して、インストールが成功したかどうかを確認します。

ab -V

6. ab --helpは必要なテストを実行できます

ストレステスト


圧力試験の前に、いくつかのオプションに焦点を当てる必要によるab -help鑑賞

Options are:
    -n requests     要执行的请求次数
    -c concurrency  并发数量
    -s timeout      响应时间

実施した:

# 总共100个并发执行1000此请求,超时时间为1s

ab -n 1000 -c 100 -s 1 http://www.baidu.com

2、wrk


wrkは、C言語で開発された、使用が簡単で強力な最新のhttpパフォーマンスベンチマークツールです。

インストール


githubからソースコードをダウンロードし、wrk githubアドレスをコンパイルしてインストール  できます。

ストレステスト


wrkのコマンドオプションは多くありません。使いやすいです。

Usage: wrk <options> <url>                            
  Options:                                            
    -c, --connections <N>  建立的连接  
    -d, --duration    <T>  执行测试时间           
    -t, --threads     <N>  线程数量   
                                                      
    -s, --script      <S>  使用lua脚本(非常强大的功能,有兴趣可以深入研究)       
    -H, --header      <H>  为每一个HTTP请求添加HTTP头        
        --latency          在压测结束后,打印延迟统计信息   
        --timeout     <T>  超时时间    
    -v, --version          Print version details      
                                                      
  Numeric arguments may include a SI unit (1k, 1M, 1G)
  Time arguments may include a time unit (2s, 2m, 2h)
# 10个线程100个连接压测30s

wrk -c100 -t10 -d30s http://www.baidu.com

3、JMeter


Apache JMeterは、Javaによって記述されたGUIテストツールで、強力な機能とさまざまな結果をもたらします。

インストール


Apache JMeterにアクセスしてダウンロードしてインストールできます。

使用する


1.計画を作成する

2.スレッドグループの確立

プランが確立すると、スレッドグループを確立できます。確立方法:プランを選択した後、[編集]> [追加]> [スレッド]> [スレッドグループ]

スレッドグループは、スレッドのいくつかのパラメータ、主にスレッド数(ユーザー)とループカウントを設定できます

3.リスナーを追加する

リスナーは主にいくつかの結果レポートを生成し、追加する方法は次のとおりです:スレッドグループを選択した後の編集>追加>リスナー

多くの結果レポートがあることがわかります。私は通常、次の結果レポートを使用します

  • 結果ツリーを表示

  • 集計レポート

  • グラフ結果

  • 結果表を表示

結果ツリーを表示

このレポートはリクエストツリーを生成します。クリックして各リクエストの情報を表示します

集計レポート

このレポートは、リクエストの集約された統計を生成します。主なパラメーターはQPS、伝送速度などです。

グラフ結果

強力なグラフィカルレポート結果

グラフ結果のいくつかの説明

  • サンプル数:サーバーに送信されたリクエストの数を表します

  • 偏差:時間に対応するサーバーで変化するデータの分布を表します

  • 最新のサンプル:サーバーが最後のリクエストに応答した時刻を示します

  • スループット(スループット率):サーバーが1分あたりに処理するデータの量

  • 平均:合計実行時間をサーバーに送信されたリクエスト数で割った値を示します

  • 中央値(中央値):サーバー時間の半分がこの値よりも短く、残りの半分がこの値よりも長いことを意味します

グラフィカルな結果に基づくいくつかの分析

  1. 開始時のスループット率は比較的低く、リクエスト数が増えると、スループット率は最初に増加し、その後減少します。

  2. 偏差は、行われる要求の数の増加に伴う偏差、サーバーのますます不安定な場合、非常に安定した状態を維持するのにも適しています

参照:https : //www.jianshu.com/p/8c622e304e14

おすすめ

転載: blog.csdn.net/m0_38023584/article/details/105925006