1

CLUSTERED Glassfish 3.1.1 でメッセージ駆動型 Bean を使用すると問題が発生します。問題は Glassfish のキューにあり、キューはインスタンス間で同期されていません。以下のシナリオを説明するために最善を尽くしています。

GlassFish クラスターに 2 つのインスタンスを作成し、JMS QueueConnectionFactory を作成し、JMS キューを作成しました。彼らの目標はクラスターに向けられました。次に、Web アプリケーションと MessageDrivenBean モジュールをクラスターにデプロイしました。Web アプリケーションは、TextMessage を JMS キューに送信します。メッセージがキューに送信され、両方のインスタンスでメッセージ駆動型 Bean によって処理されるように、ここではすべてがうまく機能します。

次に、MessageDrivenBean モジュールを無効にします。両方のインスタンスの JMS キューにメッセージを送信する Web アプリケーションを要求します。次に、myInstance2 をシャットダウンします。クラスタに MDB を再デプロイします。ここで問題が発生します。MessageDrivenBean は myInstance1 のメッセージのみを受信し、myInstance2 キューに送信されたメッセージは受信しません。myInstance2 のキュー内のメッセージは、myInstance2 が開始されたときにのみ処理されます。GlassFish が両方のインスタンスのキューを同期するために使用する設定を手伝ってくれる人がいますか?それらを提供します。

OpenMQ、GlassFish 3.1.1 を使用しており、GlassFish で HA (高可用性) オプションをオンにしましたが、それでも機能しません。

ありがとう

4

1 に答える 1

1

GlassFish の高可用性オプションと Message Queue の高可用性オプションは個別に構成されます。メッセージ キュー クラスタを「従来のクラスタ」ではなく「拡張クラスタ」に設定する必要があります。これについては、GlassFish 3.1 高可用性管理ガイドで説明されています。

于 2013-10-10T15:20:37.243 に答える