Camel 如何将消息多次发送到同一组路由,并在不同的线程上以异步方式并发执行?

kxe2p93d  于 2022-11-07  发布在  Apache
关注(0)|答案(1)|浏览(128)

我有这样一种情况,我们需要向同一个路由多次发送消息,该路由将无限运行,例如,

from(file://configuration.txt)
.bean(parseToList.class)
.split(body()) // each iteration will have different config data
.to(route://xyz)
.end()

//this will run indefinetly 
from(direct://xyz)
.to(sql:fetch query dynamically based on data)
.choice().when().simple(roucount>0).to(file://destination)
.sleep(3000)
.to(direct://xyz)

我需要直接:XYZ应该被调用为每个消息在一个不同的线程,并应永远运行。如何实现这一点在 Camel ?

  • 编辑1:* 我得到了一个使用seda的建议:而不是直接启用异步功能。但我也需要路由是事务性的,所以有什么建议来实现异步和事务性路由吗?
fwzugrvs

fwzugrvs1#

我认为您正在寻找可以用SEDA组件实现direct:组件是同步,但SEDA提供异步行为另外,请检查Camel Examples存储库中示例

相关问题