我有一种情况,我们需要向同一路由多次发送消息,该路由将无限运行,例如,
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应该在不同的线程上为每个消息调用,并且应该永远运行。如何在骆驼身上做到这一点?
编辑1:有人建议使用seda:而不是direct来启用异步功能。但我也需要路由是事务性的,所以有什么建议来实现异步和事务性路由吗?
我认为您正在寻找的可以与SEDA组件实现。direct:
组件是同步的,但SEDA提供异步行为。另外,查看Camel Examples repo中的示例。