ApacheCamelを使用した2つのBean間のルーティングに関する問題

StackOverflow https://stackoverflow.com/questions/3845598

  •  27-09-2019
  •  | 
  •  

質問

私のラクダのルートは以下のとおりです ジェネラコディセタグプレ

sendメソッドは、サードパーティのPojoによって不規則な間隔でアクティブ化されるとメッセージを送信しますが、ラクダが再起動していることが問題だと思います メッセージがrecvbeanによって受信され、同じメッセージを再送信した後のルート(1秒間に数百のメッセージ)。理想的には、 sendメソッドがアクティブになり、新しいメッセージが作成されたときにメッセージを送信します(つまり、JMSキューには一意のメッセージが含まれている必要があります)。これを行うにはどうすればよいですか?

考えられる解決策:

  1. これを行うために<from.../>内に配置できる属性はありますか?
  2. 送信Beanとキューの間の一意のメッセージをフィルタリングするプロセッサを作成します。
  3. <from uri="bean:..." />を使用せずにルーティングする他の方法はありますか

    ありがとう sanre6

役に立ちましたか?

解決

最初のルートは必要ありません。これを行うときは、そのBeanで常にsendメソッドを呼び出してルーティングするようにCamelに指示します。したがって、1秒あたり数百のメッセージが表示されるのはなぜですか。

代わりに、Beanコード内からいくつかのCamel APIを使用して、メッセージをJMSキューに送信する必要があります。たとえば、ProducerTemplateを使用します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top