4.3. テストメッセージの生成および使用

ブローカーの起動後に、これが適切に実行されていることを確認する必要があります。これには、いくつかのテストメッセージを作成し、それらをブローカーに送信し、それらを消費する必要があります。

手順

  1. artemis producer コマンドを使用して、いくつかのテストメッセージを生成し、それらをブローカーに送信します。

    このコマンドは、ブローカー上に自動的に作成される helloworld アドレスに 100 個のメッセージを送信します。プロデューサーは、サポートされるすべてのメッセージングプロトコルを許可するデフォルトのポート 61616 を使用してブローカーに接続します。

    $ /opt/redhat/amq-broker/amq-broker-7.2.0/bin/artemis producer --destination helloworld --message-count 100 --url tcp://localhost:61616
    Producer ActiveMQQueue[helloworld], thread=0 Started to calculate elapsed time ...
    
    Producer ActiveMQQueue[helloworld], thread=0 Produced: 100 messages
    Producer ActiveMQQueue[helloworld], thread=0 Elapsed time in second : 1 s
    Producer ActiveMQQueue[helloworld], thread=0 Elapsed time in milli second : 1289 milli seconds
  2. Web コンソールを使用して、ブローカーに保存されているメッセージを表示します。

    1. Web ブラウザーで 、http://localhost:8161 に移動します。
    2. ブローカーインスタンスの作成時に作成したデフォルトのユーザー名およびパスワードを使用して、コンソールにログインします。

      Attributes タブが表示されます。

    3. Attributes タブで、メニュー: [addresses > helloworld > queue > "anycast" > helloworld] に移動します。

      前の手順で、メッセージを helloworld アドレスに送信しています。これにより、キュー (helloworldという名前) を持つ新しい anycast helloworld アドレスが作成されました。Message count 属性は、現在 helloworld に送信された 100 個のメッセージがこのキューに保存されていることを示しています。

      図4.1 メッセージ数

      Message count
  3. artemis consumer コマンドを使用して、ブローカーに保存されているメッセージの 50 を消費します。

    このコマンドは、以前にブローカーに送信されたメッセージの 50 を消費します。

    $ /opt/redhat/amq-broker/amq-broker-7.2.0/bin/artemis consumer --destination helloworld --message-count 50 --url tcp://localhost:61616
    
    Consumer:: filter = null
    Consumer ActiveMQQueue[helloworld], thread=0 wait until 50 messages are consumed
    Consumer ActiveMQQueue[helloworld], thread=0 Consumed: 50 messages
    Consumer ActiveMQQueue[helloworld], thread=0 Consumer thread finished
  4. Web コンソールで、Message count が 50 であることを確認します。

    50 のメッセージが消費されました。これにより、50 メッセージが helloworld キューに格納されました。

  5. ブローカーを停止し、50 の残りのメッセージが helloworld キューに保存されていることを確認します。

    1. ブローカーが稼働しているターミナルで、Ctrl+C を押してブローカーを停止します。
    2. ブローカーを起動します。

      $ /var/opt/amq-broker/mybroker/bin/artemis run
    3. Web コンソールで、helloworld キューに戻り、キューに保存されているメッセージが 50 であることを確認します。
  6. 残りの 50 メッセージを消費します。

    $ /opt/redhat/amq-broker/amq-broker-7.2.0/bin/artemis consumer --destination helloworld --message-count 50 --url tcp://localhost:61616
    
    Consumer:: filter = null
    Consumer ActiveMQQueue[helloworld], thread=0 wait until 50 messages are consumed
    Consumer ActiveMQQueue[helloworld], thread=0 Consumed: 50 messages
    Consumer ActiveMQQueue[helloworld], thread=0 Consumer thread finished
  7. Web コンソールで、Message count が 0 であることを確認します。

    helloworld キューに保存されているメッセージはすべて消費され、キューが空になりました。