31.4.3. ONCE_AND_ONLY_ONCE
メッセージは宛先に 1 度だけ到達します。ソースおよび宛先が同じ HornetQ サーバーインスタンスに存在する場合、このモードは同じローカルトランザクションの一部としてメッセージを送信および承認します。ソースおよび宛先が異なるサーバーに存在する場合、このモードは送信および消費セッションを JTA トランザクションに含めます。
この JTA トランザクションは JBoss トランザクション JTA によって制御されます。JBoss トランザクション JTA は完全な復元トランザクションマネージャーであり、非常に高度な耐性を提供します。JTA が必要な場合、提供された両方の接続ファクトリーは
XAConnectionFactory 実装である必要があります。
多くの場合、これは、特別な永続化が必要になるため、最も低速なモードになります。このモードは耐性メッセージでのみ利用可能です。
注記
一部のアプリケーションでは、1 度だけのセマンティクスは
DUPLICATES_OK モードを設定し、宛先で重複メッセージを確認し、破棄することによって提供できます。この方法は、ONCE_AND_ONLY_ONCE モードを使用した場合よりも信頼できませんが、代替手段として役に立ちます。