第81章 Direct VM コンポーネント
Camel バージョン 2.10 で利用可能
direct-vm: コンポーネントは、プロデューサーがメッセージエクスチェンジを送信する際に、JVM 内のコンシューマーの直接同期呼び出しを提供します。
このエンドポイントは、同じ Camel コンテキストの既存のルートや、同じ JVM にある他の Camel コンテキストから接続するために使用できます。
このコンポーネントは、 Direct -VM が CamelContext インスタンス全体の通信をサポートするという点で Direct コンポーネントとは異なり、このメカニズムを使用して Web アプリケーション全体で通信できます(camel-core.jar はシステム/起動クラスパス上にある場合)。
実行時に、既存のコンシューマーを停止して新しいコンシューマーを開始することで、新しいコンシューマーをスワップできます。
ただし、任意の時点では、指定のエンドポイントに対して最大でアクティブなコンシューマーを 1 つだけ指定できます。
このコンポーネントでは、後に確認できるように、異なる OSGI Bundles にデプロイされたルートを接続することもできます。異なるバンドルで動作している場合でも、Camel ルートは同じスレッドを使用します。
これは、トランザクション - Tx を使用してアプリケーションの開発を自動的に行います。
81.1. URI 形式
direct-vm:someName
someName には、エンドポイントを一意に識別する文字列を使用できます。