2

私は Apache Camel を初めて使用し、Grails アプリケーションにファイル ポーラーを実装して、2 つのノードの Jboss クラスターにデプロイすることを計画しています。

Camel を含めるために Grails ルーティング プラグインを使用する予定です。

問題は、これはクラスター環境であるため、2 つの Camel コンテキスト (各ノードに 1 つ) が正しいかどうかです。その場合、両方に同じルートが含まれます。ファイルがソース フォルダーに存在する場合、両方の camel コンテキストがファイルを処理しようとしますか? 両方のノードがファイルを処理しようとして失敗するような状況は望ましくありません。ファイルを 1 つのキャメル コンテキストとルートだけで処理したいだけです。このシナリオを処理するために何か特別なことをする必要がありますか? または、Camel はクラスター内で機能しますか?

4

1 に答える 1

1

キャメル コンテキストを jboss クラスター化シングルトンとして実行できます。

========================================

申し訳ありませんが、モバイルで応答していました。ここにいくつかの詳細情報があります。

クラスター内のすべてのノードで camel コンテキストを実行できないということではありませんが (実行できます)、すべてのノードが同じファイル システムを監視しており、ターゲットにドロップされたファイルを誰が処理するかについて議論したくない場合です。ディレクトリの場合、最善の策は、一度に実行するコンテキストのインスタンスを 1 つだけにすることです。

あなたはすでに jboss クラスターを実行しているので [私が推測する]、HA シングルトンモデルが適しているようです。キャメル コンテキストは 1 つのインスタンスでのみ実行されますが、そのインスタンスが失敗すると、別のノードがコンテキストを開始するため、常にコンテキストを実行できる可能性が高くなります。

とにかく見るべきもの。または、クラスタ内の各ノードに異なるファイル マスクを指定して、各コンテキストが指定されたファイル マスクに一致するファイルのみを取得するようにすることもできます。

于 2012-11-05T01:19:08.753 に答える