インストールしたメッセージングミドルウェアに対応した環境設定を行います。

このページは、メッセージングミドルウェアのインストールを行ったあとにお読みください。

メッセージキューを指定する

環境 > アプリケーションを開きます。メッセージキュー設定欄の「メッセージジョブ機能を使用する」の選択肢を有効にします。

図1 環境設定

Apache Active MQ Artemis または Amazon MQ を利用する場合

"環境 > アプリケーション > メッセージキュー > メッセージジョブ機能を使用する" で "ActiveMQ" を選択してください。

Rabbit MQ を利用する場合

"RabbitMQ" を選択してください。

上記のいずれも選択されていない場合、以降に説明する非同期処理(メッセージジョブ機能)は利用できません。

サーバをインストールしない運用(インメモリでの動作)

"ActiveMQ" を選択し、さらに "ActiveMQ > 送信先" を "インメモリ" とすると、メッセージングミドルウェアを別途インストールすることなく非同期処理を実現することができます。

両方を利用する

Apache Active MQ Artemis と Rabbit MQ の両方を併用することもできます。"ActiveMQ" と "RabbitMQ" の両方を選択します。このとき "デフォルトの接続先" の設定が有効になります。送信先キュー名に指定がない場合は、このデフォルト接続先が用いられます。

インストールした Rabbit MQ の情報を設定します。

設定欄説明
RabbitMQホスト名ホスト名を指定する。未指定時はlocalhost。
RabbitMQポート番号未指定時は5672。
RabbitMQユーザ名未指定時はguest。
RabbitMQパスワード未指定時はguest。
使用するキューの名前標準は空白とする。カスタマイズしてメッセージキュー名を指定したい場合に指定する。
ジョブを受信するキューの名前標準は空白とする。カスタマイズしてメッセージキュー名を指定したい場合に指定する。

ホスト名、ポート番号、ユーザ名、パスワードの設定は、ビルドしたアプリケーションの WEB-INF/classes/application.properties に出力されます。

spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest

キュー名はビルドしたアプリケーションの WEB-INF/wagby-servlet/jfcMessageQueue.xml に出力されます。 キュー名の未指定時(空白設定)は、標準では "wagbyJobQueue" という名前のキューが用意されます。

具体的には「使用するキューの名前」は rabbit:queue へ、「ジョブを受信するキューの名前」は rabbit:listener の queues に反映されます。

   <rabbit:queue name="wagbyJobQueue"/>
   <rabbit:queue name="wagbyUploadUpdateJobQueue"/>

   <rabbit:listener-container connection-factory="rabbitConnectionFactory">
       <rabbit:listener
         queues="wagbyJobQueue,wagbyUploadUpdateJobQueue"
         ref="JobExecutionMessageListener" method="processQueue"/>
   </rabbit:listener-container>

インストールした Apache ActiveMQ Artemis の情報を設定します。

設定欄説明
送信先"インメモリ" と "ブローカー接続" のいずれかを選択する。"インメモリ" の場合、Wagbyに同梱されているActiveMQクライアントライブラリがメモリ上でキューを管理するため、別途 Apache ActiveMQ Artemis をインストールすることなく利用できる。Apache ActiveMQ Artemisをインストールしている環境では "ブローカー接続" を選択する。
ブローカーURL標準は "tcp://localhost:61616" となっている。これはApache ActiveMQ Artemisをローカルマシンで起動した場合のデフォルト値。送信先が "インメモリ" の場合、この設定は無視される。
ユーザ名インストール時に設定したユーザ名を指定する。送信先が "インメモリ" の場合、この設定は無視される。
パスワードインストール時に設定したパスワードを指定する。送信先が "インメモリ" の場合、この設定は無視される。
ジョブを受信するキューの名前標準は空白となっている。カスタマイズしてメッセージキュー名を指定したい場合に指定する。

AWS に設定した Amazon MQ の情報を反映させます。

設定欄説明
送信先"ブローカー接続" を選択する。
ブローカーURL例 ssl://b-51d382de-d5a3-42c2-8d29-5a51d0489a0b-1.mq.ap-northeast-1.amazonaws.com:61617
ユーザ名AmazonMQの設定時に登録したユーザ名を指定する。
パスワードAmazonMQの設定時に登録したパスワードを指定する。
ジョブを受信するキューの名前標準は空白となっている。カスタマイズしてメッセージキュー名を指定したい場合に指定する。