2010-12-16 12 views
1

JBoss ESB 4.9を実行しているJBossアプリケーションサーバー(5.1)でフェイルオーバーに関する質問があります。私は、ダイアグラムで始まります:JBoss Application Serverのフェイルオーバー

diagram

私たちは、従来の輸送(「レガシー交通」)上のデータを生成するレガシー・アプリケーション(「レガシープロデューサー」)を有します。私たちは、レガシートランスポートをリッスンし、受信したメッセージをESBに送信するESBサービス(「ゲートウェイ」)を作成しました。その後、メッセージは処理されるいくつかのオーケストレーション手順に従います。

これは、1つのアプリケーションサーバーが動作している場合に正しく動作します。ただし、アプリケーションサーバーの障害を許可したいと考えています。次に、2つのそのようなアプリケーションサーバー(図示されている)をクラスタ構成で立ち上げることは、単純な解決策です。ただし、これによってゲートウェイサービスが複製される結果、各メッセージの2つのコピーがESBに公開されて処理されるため、望ましくない結果になります。

このタイプのフェールオーバーを実装する正しい方法は何ですか?

答えて

1

正しい方法は、ノード間でJMSクラスタリングを使用することです。これを行う方法については、AS/JBoss Messaging(またはHornetQ)のドキュメントを参照する必要がありますが、ESBにはこれを示すためのクイックスタートは含まれていません。

jUDDI情報も両方のノードに公開するには、いくつかの手順が必要になることがありますが、マニュアルではこれを行う方法が説明されています。プログラマーズ・ガイドをチェック「7.1。フェールオーバーと負荷分散のサポート」「レガシー交通」は、ファイルシステムベースの場合、より具体的に

+1

は、どのようにあなたは何に近い競合状態がの2つのインスタンス間で生じないことを確認してくださいFileGatewayListeners:監視されたフォルダにファイルが表示され、両方のリスナが同時にトリガされ、1人のリスナが.inProgressサフィックスを追加してファイルの名前を変更し、既に名前が変更されているため、この問題を防ぐクラスタ構成はありますか? –

関連する問題