web-dev-qa-db-ja.com

立ち上げを理解するJMeter

これは、テスト計画のスレッドプロパティの構成です。

Number of Threads (users): 100
Ramp-up Period (in seconds): 10
Loop Count : Forever
Delay thread creation until needed: No
Scheduler: No

合計14時間7分(約50820秒)で一晩テストを実行しました。 jtlファイルをロードした後、要約レポートに表示されるサンプルの数は1050975です。計算しようとしましたが、そのように多くのサンプルがどのように生成されたかを理解できません。

Ramp-up PeriodがJMeterが反復ごとのスレッド数を作成するのにかかる時間であり、テストの期間が50820秒である場合、508200サンプル(50820/10 * 100)のみが必要です。ループカウントがこれにどのように、または影響するかはわかりません。

41
Frank Smith

Thread Group の増加は、JMeterがスレッドの合計数を開始するのに要する時間です。あなたの状況では、これは0.1秒ごとに新しいスレッドが10秒後に100の実行中のスレッドを与え始めることを意味します。これらの100個のスレッドは、テストの反復を連続して実行するため、ランプアップ後、テスト中は100個のスレッドが継続的に実行されます。

61
rsp

Ramp-up Period-すべてのリクエストが開始する時間枠(秒単位)。 _Number of Threads_入力で指定されたすべてのスレッドは、_Ramp-up period_

例えば:

100スレッドと100秒のランプアップ:1秒ごとにJMeterが開始されます1スレッド100秒が起動するまでにすべてのスレッドが開始されるまで。

100スレッドと50秒のランプアップ:毎秒2スレッドは始めました。

100スレッドおよび200秒のランプアップ:2秒ごと2秒1スレッドが開始されます。

さて、

サンプルまたはリクエストの生成は、スレッド生成とは異なる概念です。あなたの場合、100個のスレッドが10秒以内にアップしました。ここで重要な要素は- スループット 。 JMeter用語集によると:

スループットは、要求/時間単位として計算されます。時間は、最初のサンプルの開始から最後のサンプルの終了まで計算されます。これには、サーバー間の負荷を表すことが想定されているため、サンプル間の間隔が含まれます。

式は次のとおりです。スループット=(要求の数)/(合計時間)。

ここで、実行されたサンプルまたはリクエストの数は_1050975_であり、テスト期間は_50820_秒。したがって、これはスループットに関連しています。出力_1050975_要求(_50820s_テスト全体のAverage Throughputはおおよそ_20.5/s_

Throughputまたは_Transactions per second_を制御するには、 Constant Throughput Timer と呼ばれる非常に便利なJMeterプラグインがあります。

一定スループットタイマーは、一定の数値に可能な限り近い合計スループット(1分あたりのサンプル数)を維持するために計算される可変休止を導入します。もちろん、サーバーが処理できない場合、または他のタイマーや時間のかかるテスト要素がそれを妨げている場合、スループットは低くなります。

19
Adnan

ランプアップ期間は、JMeterにスレッドの最大数まで「ランプアップ」するのにかかる時間を指示します。

@Little Chicken Understanding 1は正しいです。

10個のスレッドが使用され、ランプアップ期間が10秒である場合、JMeterは10個すべてのスレッドを起動して実行するのに10秒かかります。

各スレッドは、前のスレッドが開始されてから1秒後に開始されます。

12
Jmeter PerfTest

ランプアップ期間は、選択されたスレッドの完全な数に「ランプアップ」するのにかかる時間をJMeterに伝えます。 10個のスレッドが使用され、ランプアップ期間が100秒の場合、JMeterは10個のスレッドすべてを起動して実行するのに100秒かかります。各スレッドは、前のスレッドが開始されてから10(100/10)秒後に開始されます。 30個のスレッドがあり、120秒のランプアップ期間がある場合、連続する各スレッドは4秒遅延します。

3
iambritto

理解1:正しいランプアップ期間は、選択されたスレッドのフル数まで「ランプアップ」するのにかかる時間をJMeterに伝えます。 10個のスレッドが使用され、ランプアップ期間が100秒の場合、JMeterは10個のスレッドすべてを起動して実行するのに100秒かかります。各スレッドは、前のスレッドが開始されてから10(100/10)秒後に開始されます。 30個のスレッドと120秒のランプアップ期間がある場合、連続する各スレッドは4秒遅延します

1
Devang

例えば

  1. 1000秒のランプアップで1000のターゲットスレッド:JMeterは毎秒1人のユーザーを追加します
  2. 100秒のランプアップで1000のターゲットスレッド:JMeterは毎秒10ユーザーを追加します
  3. 50秒のランプアップで1000のターゲットスレッド:JMeterは毎秒20ユーザーを追加します
0

ランプアップ期間:ユーザーが取引を開始するために中断されるレート。

JMeterでは、10人のユーザーが20のランプアップ時間を指定すると、1人のユーザーが2秒ごとに計画の実行を開始します。

0

このプロパティは、JMeterに各ユーザーの起動間の遅延時間を指示します。

たとえば、5秒のランプアップ期間を入力すると、JMeterは5秒の終わりまでにすべてのユーザーの起動を終了します。したがって、5人のユーザーと5秒のランプアップ期間がある場合、開始ユーザー間の遅延は1秒になります(5ユーザー/ 5秒= 1秒あたり1ユーザー)。値を0に設定すると、JMeterはすべてのユーザーをすぐに起動します。

0