web-dev-qa-db-ja.com

コンスタントスループットタイマーを使用して、1時間に1秒あたり最大4人の同時ユーザーを指定する方法

1秒あたり4人の同時ユーザーの最大がある負荷テストを作成する必要があります。次に、これを1時間繰り返す必要があります。 JMeterでこれを達成する方法はありますか?

私はこの構成を使用してみました:

  • スレッド数:4
  • ランプアップ期間:1
  • ループカウント:永遠に
  • 期間:3600

そして、これが正確に1時間実行されることを確認するために、同じ「3600」ランタイム値で ランタイムコントローラー も使用しました。

しかし、これらは私が必要とするよりも毎秒多くの同時ユーザーを作成し、さらにユーザーとして多くの同時ユーザーが何かをする前に考えるのに時間がかかる可能性は低く、これは私の構成に反映されていないので、- 一定のスループットタイマー 、しかしこれは私をもっと混乱させるだけです。

  • Constant Throughput Timerを使用する必要があると確信していますが、私の場合、それをどのように行うかについての微妙な考えがありません。
  • Constant Throughput Timerを使用する場合、スレッドのプロパティ(スレッド数、ランプアップ期間、ループ数、スケジュール)をどのように構成する必要がありますか?
  • テスト計画が正確に1時間実行されるようにするため、または3600の期間値を指定するのに十分であることを確認するために、ランタイムコントローラーを本当に使用する必要がありますか?
11
Axel

一定のスループットタイマーにより、サーバーのスループットを維持できます。 (req/sec)ここでのリクエストはサンプラーです。スレッドは、サンプラーを使用してサーバーを要求しているユーザー/クライアントです。

これにより、リクエストとユーザー、つまりサンプラーとスレッドの区別が明確になったと思います。

現在、コンスタントスループットタイマーはサンプラー/分ベースで機能します。したがって、1秒あたり4要求の要件に対して。 1分あたり240リクエストになります。

また、すべてのスレッド間(複数のスレッドグループがある場合)または単一のスレッドグループ間(単一のスレッドグループがある場合)でこのスループットを維持する必要があります。

したがって、JMeterエンジンは、指定されたランプアップですべてのスレッドを開始しますが、指定された秒で実行できるサンプラーは4つだけです。つまり、1秒あたりのリクエストは4つだけです。したがって、スループットはすべてのスレッド間で達成され、次のいずれかの方法を使用して、指定された時間これを継続できます。

  1. テスト期間
  2. ランタイムコントローラー

enter image description here

それがあなたの混乱を取り除き、問題を解決したことを願っています。

16
Nachiket Kate