1

AMQ 5.5.1 でストレス テストを実行しようとしています。

キューを作成し、Jmeter ポイントツーポイントを使用して JMS リクエストをキューに送信しました。コンシューマーを構成していないため、メッセージが積み上げられ、実際に KahaDB ストアに格納されることに注意してください。
Thread グループで 200 人のユーザーを使用したことに気付きました。ActiveMQ で正確に 400 のスレッドが作成され、jconsole で確認できます。
Jmeter はゆっくりと (実際には非常に高速に) メッセージをキューにプッシュし続けます。これは、キューのサイズが徐々に増加していることがわかり、一度にプッシュしているわけではないためです。

ProducerFlowControl を false として使用し、デフォルトのハイブリッド ストア カーソルを使用しています (ただし、現時点ではコンシューマーの準備ができていません)。

私も永続的配信を使用しています。

私の質問は次のとおりです。

  1. Jmeter が 200 個のメッセージすべてを一度にプッシュすることを制限しているのは何ですか? ActiveMQ ですか、一度に 200 を送信できるように jmeter で何かを構成する必要があります。Jmeter でテストを開始するとすぐに、ActiveMQ で 400 のスレッドが作成されることに気付きました。これは、activemq を使用して 200 人のユーザーに対して一度に接続を確立すると思われますが、メッセージはバッチでプッシュされますが、一緒にはプッシュされません。

  2. activemq のコンシューマごとに 2 つのスレッドがあるのはなぜですか。また、すべてのメッセージがプッシュされるまですべてのスレッドがアクティブなままになるのはなぜですか。理想的には、ユーザーがメッセージを 1 つずつプッシュし、確認応答が返ってきたらすぐにプッシュしていた場合、メッセージは消滅しているはずです。しかし、最終的にすべてのメッセージがプッシュされると、200 X 2 スレッドすべてが同時に終了します。

どんな助けでも大歓迎です。

4

0 に答える 0