8

最近キャメルを使い始めましたが、統合レイヤーの多くのニーズに対応できる可能性があることがわかりました。

2 つのルートを定義した Java クライアント アプリケーション (コンテナーで実行されていない) を作成しました。

route1: ファイルを受信フォルダー 1 からフォルダー 2 に移動します。

route2: ファイル コンテンツを folderx から mq キューに移動します。

アプリケーションを起動すると、これらのルートはそれらのフォルダーをポーリングし、それに応じてメッセージをルーティングする仕事をしています。

ルートがどのように機能するかを誰かに説明してもらえますか。camel(context) はルートごとにスレッドを作成しますか。正確には何が起こりますか?

注: ラクダのサイトで、これに関する簡単なメモを見つけることができませんでした。

4

1 に答える 1

12

ルートで使用するコンポーネント、作成および使用されるスレッドの数によって異なります。

Camel の一部の EIP と同様に、複数のスレッド (スレッド プール) をサポートしているため、N 個のスレッドを使用するように構成できます。

あなたの例ではファイルコンポーネントであり、単一のスレッドを使用しています。2 つのルートがあるため、2 つのスレッドを使用します。一部のコンポーネントでは、スレッド化を構成することもできます (例: スレッド プール)。たとえば、最近、Camel 2.10 でファイル コンポーネントのサポートを追加しました ( https://camel.apache.org/components/latest/file-component.htmlのscheduledExecutorService オプションを参照してください) 。

Camel スレッド モデルhttp://camel.apache.org/threading-model.htmlに関する注意事項がいくつかあり ます。

于 2012-08-28T05:37:54.003 に答える