java 消息路由框架_Apache Camel:保持路由信息完全独立于Java代码

首先感谢目前参与Camel开发的人们,我很感激他们所付出的辛勤劳动 .

我正在寻找一些设计建议 .

架构是这样的:我有一堆Java类,在实例化时需要相互连接并使用Apache Camel发送消息 . 设计约束要求我创建一个框架,使所有路由信息, 生产环境 者,消费者, endpoints 等都应该成为camel-context.xml的一部分 .

一个人应该有能力修改这样的文件并完全改变现有的路由,而不需要他可用的Java代码 . (不提供Java代码,只有编译后的Jar)

例如在一个设置中, Bean A ->Bean B->Bean C->file->email. 在另一个设置中 Bean B->Bean A->Bean C->ftp->file->email 我们尝试了各种接近,但如果原始bean没有实现为Java DSL,则 messages rate is very high because camel constantly invokes Bean A in the first example and Bean B in the second (它们是源) .

Bean A和Bean B发起消息并且是事件驱动的 . 如果发生了所需的事件,bean会发出通知消息 .

我的转换非常简单,我根本不需要Java DSL的强大功能 . 总结一下,我有以下问题:

1)考虑到上述约束,我确保所有路由信息,包括目标地址,一切都是camel上下文文件的一部分?

2)我是否可以看一下保持路由信息完全独立于java代码的例子?

3)我如何确保Camel不会不断调用原始bean?

4)Camel是否不断调用原始bean或它发送的任何bean以及消息,而不管bean在整个消息队列中的位置如何?

我已经用尽各种方法来设置它 . 任何帮助,将不胜感激 .

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值