第9章 接続ファクトリーの設定

デフォルトでは、JBoss EAP の messaging-activemq サブシステムは、InVmConnectionFactory および RemoteConnectionFactory 接続ファクトリーactivemq-ra プールされた接続ファクトリーを提供します。

基本的な接続ファクトリー

InVmConnectionFactoryin-vm-connector を参照し、クライアントとサーバーの両方が同じ JVM で実行されている場合にメッセージを送受信するために使用できます。RemoteConnectionFactoryhttp-connector を参照します。また、クライアントとサーバーが異なる JVM で実行されている場合に HTTP でメッセージを送受信するために使用できます。

<subsystem xmlns="urn:jboss:domain:messaging-activemq:4.0">
  <server name="default">
    ...
    <connection-factory name="InVmConnectionFactory" connectors="in-vm" entries="java:/ConnectionFactory"/>
    <connection-factory name="RemoteConnectionFactory" connectors="http-connector" entries="java:jboss/exported/jms/RemoteConnectionFactory"/>
    ...
  </server>
</subsystem>

各種のコネクターのタイプの詳細は、「アクセプターとコネクター」のセクションを参照してください。

接続ファクトリーの追加

以下の管理 CLI コマンドを使用すると、新しい接続ファクトリーを追加できます。接続ファクトリーを追加する場合、connectors と JNDI entries を指定する必要があります。

/subsystem=messaging-activemq/server=default/connection-factory=MyConnectionFactory:add(entries=[java:/MyConnectionFactory],connectors=[in-vm])

接続ファクトリーの設定

管理 CLI を使用すると、接続ファクトリーの設定を更新できます。

/subsystem=messaging-activemq/server=default/connection-factory=MyConnectionFactory:write-attribute(name=thread-pool-max-size,value=40)

接続ファクトリーで使用できる属性の詳細は、「接続ファクトリーの属性」を参照してください。

接続ファクトリーの削除

管理 CLI を使用すると、接続ファクトリーを削除できます。

/subsystem=messaging-activemq/server=default/connection-factory=MyConnectionFactory:remove

プールされた接続ファクトリー

JBoss EAP の messaging-activemq サブシステムでは、統合 ActiveMQ Artemis リソースアダプターのインバウンドコネクターとアウトバウンドコネクターの設定を可能にするプールされた接続ファクトリーを提供します。リモート ActiveMQ Artemis サーバーに接続する pooled-connection-factory の設定の詳細は、「リモート接続での統合リソースアダプターの使用」を参照してください。

<subsystem xmlns="urn:jboss:domain:messaging-activemq:4.0">
  <server name="default">
    ...
    <pooled-connection-factory name="activemq-ra" transaction="xa" entries="java:/JmsXA java:jboss/DefaultJMSConnectionFactory" connectors="in-vm"/>
  </server>
</subsystem>

プールされた接続ファクトリーにはいくつかの固有の特性があります。

  • これはローカルクライアントでのみ利用できますが、リモートサーバーを指定するように設定することも可能です。リモート ActiveMQ Artemis サーバーへの接続の詳細は、「リモート接続での統合 Artemis リソースアダプターの使用」を参照してください。
  • JNDI でのルックアップまたはインジェクトの場合のみメッセージ送信に使用する必要があります。
  • セキュリティー認証情報を使用するように設定できます。これはセキュアなリモートサーバーを参照する場合に便利です。
  • そこから取得されたリソースは継続中の JTA トランザクションに自動的に登録されます。

プールされた接続ファクトリーの追加

以下の管理 CLI コマンドを使用すると、新しいプールされた接続ファクトリーを追加できます。接続ファクトリーを追加する場合、connectors と JNDI entries を指定する必要があります。

/subsystem=messaging-activemq/server=default/pooled-connection-factory=MyPooledConnectionFactory:add(entries=[java:/MyPooledConnectionFactory],connectors=[in-vm])

プールされた接続ファクトリーの設定

管理 CLI を使用すると、プールされた接続ファクトリーの設定を更新できます。

/subsystem=messaging-activemq/server=default/pooled-connection-factory=MyPooledConnectionFactory:write-attribute(name=max-retry-interval,value=3000)

プールされた接続ファクトリーで使用できる属性の詳細は、「プールされた接続ファクトリーの属性」を参照してください。

管理 CLI を使用して、このプールされた接続ファクトリーのエンリストメントトレースの記録を無効にするには、enlistment-trace 属性を false に設定します。

/subsystem=messaging-activemq/server=default/pooled-connection-factory=MyPooledConnectionFactory:write-attribute(name=enlistment-trace,value=false)
警告

エンリストメントトレースを無効にすると、トランザクションエンリストメント中のエラーの追跡がより困難になります。

プールされた接続ファクトリーで使用される管理対象接続プールの実装を設定することもできます。詳細は、JBoss EAP『設定ガイド』の「管理接続プールの設定」を参照してください。

プールされた接続ファクトリーの削除

管理 CLI を使用すると、プールされた接続ファクトリーを削除できます。

/subsystem=messaging-activemq/server=default/pooled-connection-factory=MyPooledConnectionFactory:remove