30.4. JCA アダプターの設定
Java Connector Architecture (JCA) アダプターを使用すると、HornetQ を MDB や EJB などの Java EE コンポーネントと統合できます。これは、MDB などのコンポーネントが HornetQ サーバーからメッセージをどのように消費するかや、EJB またはサーブレットなどのコンポーネントがメッセージをどのように送信できるかを設定します。
HornetQ JCA アダプターは、
JBOSS_DIST/jboss-as/server/PROFILE/deploy/jms-ra.rar
アーカイブでデプロイされます。アダプターの設定は、META-INF/ra.xml
下のこのアーカイブにあります。
これを参照する必要がある場合は、このファイルのサイズのため、これは、付録B ra.xml HornetQ リソースアダプターファイル に含まれます。また、指定されたディレクトリからこのファイルを開き、以下の情報とともに確認することもできます。
この設定には 3 つの主要な部分があります。これらについては、次の項で説明されています。
30.4.1. JCA グローバルプロパティー
表示された最初の要素は
resourceadapter-class
であり、変更しないでください。これは、HornetQ リソースアダプタークラスです。
この後に、設定プロパティーのリストがあります。ここでは、ほとんどの設定が行われます。最初の 2 つのプロパティーはアダプターにより使用されるトランスポートを設定し、残りは接続ファクトリー自体を設定します。
注記
すべての接続ファクトリープロパティーは、デフォルト値が -1 である
reconnectAttempts
を除いて、デフォルト値を使用します。これは、接続が接続障害時に再接続を無限に行うことを意味します。これは、InVM コネクターが失敗できない場合に、アダプターがリモートサーバーに接続するよう設定された場合のみ使用されます。
以下の表は、各プロパティの使用目的について説明しています。
表30.1 グローバル設定プロパティー
プロパティー名 | プロパティータイプ | プロパティーの説明 |
---|---|---|
ConnectorClassName | 文字列 | Connector クラス名 (詳細については、14章トランスポートの設定 を参照) |
ConnectionParameters | 文字列 | トランスポート設定。これらのパラメーターは、key1=val1;key2=val2; という形式である必要があり、使用されるコネクターに固有です。 |
useLocalTx | ブール値 | True の場合は、ローカルトランザクションの最適化が有効になります。 |
UserName | 文字列 | 接続を確立するときに使用するユーザー名 |
Password | 文字列 | 接続を確立するときに使用するパスワード |
BackupConnectorClassName | 文字列 | ライブノードで障害が発生したときに使用するバックアップトランスポート |
BackupConnectionParameters | 文字列 | バックアップトランスポート設定パラメーター |
DiscoveryAddress | 文字列 | サーバーを自動検出するために使用する検出グループアドレス |
DiscoveryPort | 整数 | 検出に使用するポート |
DiscoveryRefreshTimeout | Long | 更新するタイムアウト (ミリ秒単位) |
DiscoveryInitialWaitTimeout | Long | 検出を待機する初期時間 |
ConnectionLoadBalancingPolicyClassName | 文字列 | 使用するロードバランシングポリシークラス |
ConnectionTTL | Long | 接続のために存続する時間 (ミリ秒単位) |
CallTimeout | Long | 送信された各パケットに対するコールタイムアウト (ミリ秒単位)。 |
DupsOKBatchSize | 整数 | DUPS_OK_ACKNOWLEDGE モードを使用する場合の、承認間のバッチサイズ (バイト単位)。 |
TransactionBatchSize | 整数 | トランザクションセッションの使用時の、承認間のバッチサイズ (バイト単位)。 |
ConsumerWindowSize | 整数 | コンシューマーフロー制御のウィンドウサイズ (バイト単位) |
ConsumerMaxRate | 整数 | コンシューマーが 1 秒ごとにメッセージを消費できる最速レート |
ConfirmationWindowSize | 整数 | 再添付の確認のためのウィンドウサイズ (バイト単位) |
ProducerMaxRate | 整数 | 1 秒ごとに送信できるメッセージの最大レート |
MinLargeMessageSize | 整数 | バイト単位のサイズ。これよりも大きいと、メッセージが大きいと見なされます。 |
BlockOnAcknowledge | ブール値 | メッセージが同期的に承認されるかどうか。 |
BlockOnNonDurableSend | ブール値 | 非耐性メッセージが同期的に送信されるかどうか。 |
BlockOnDurableSend | ブール値 | 耐性メッセージが同期的に送信されるかどうか。 |
AutoGroup | ブール値 | メッセージグルーピングが自動的に使用されるか、されないか。 |
PreAcknowledge | ブール値 | 送信前にメッセージをサーバーが事前に承認するかどうか。 |
ReconnectAttempts | 整数 | 再試行の最大回数。リソースアダプターのデフォルト値は -1 (無限の試行回数) です。 |
RetryInterval | Long | 失敗後に接続を再試行する時間 (ミリ秒単位)。 |
RetryIntervalMultiplier | Double | 連続する再試行間隔に適用する乗数。 |
FailoverOnServerShutdown | ブール値 | true の場合は、クライアントが別のサーバー (利用可能な場合) に最接続します。 |
ClientID | 文字列 | 接続ファクトリーに対して事前に設定されたクライアント ID。 |
ClientFailureCheckPeriod | Long | ミリ秒単位の時間。この時間の経過後、クライアントはサーバーからパケットを受け取らない場合に接続が失敗したと見なします。 |
UseGlobalPools | ブール値 | スレッドにグローバルスレッドプールを使用するかどうか。 |
ScheduledThreadPoolMaxSize | 整数 | スケジュールされたスレッドプールのサイズ。 |
ThreadPoolMaxSize | 整数 | スレッドプールのサイズ。 |
SetupAttempts | 整数 | JMS 接続をを設定する試行回数 (デフォルト値は 10 であり、-1 は無限に再試行することを意味します)。MDB は、JMS リソースが利用可能になる前にデプロイされることがあります。この場合、リソースアダプターは、リソースが利用可能になるまで複数回設定の試行を行います。これは、インバウンド接続にのみ適用されます。 |
SetupInterval | Long | JMS 接続を設定するための、連続する試行間のミリ秒単位の時間(デフォルト値は 2000m)。これは、インバウンド接続に対してのみ適用されます。 |