我正在实现我自己的自定义组件,我发现我需要为消费者提供两个用例:
- 第一个将尝试每隔一段时间获取 N 条可用消息(轮询消费者)
- 第二个是订阅者消费者,当消息可用时获取消息。
我的主要问题是是否可以实现这两种类型。我一直在尝试编写一些代码,但似乎如果你正在开发一个 PollingConsumer
你不能实现另一种类型。另外,如果可能的话,是否有任何关于如何执行此操作的示例、文章或指南?我一直在寻找它没有出现。
谢谢!
我正在实现我自己的自定义组件,我发现我需要为消费者提供两个用例:
我的主要问题是是否可以实现这两种类型。我一直在尝试编写一些代码,但似乎如果你正在开发一个 PollingConsumer
你不能实现另一种类型。另外,如果可能的话,是否有任何关于如何执行此操作的示例、文章或指南?我一直在寻找它没有出现。
谢谢!
Camel 中有两种消费者类型(例如来自 EIP 书籍)
它是骆驼路线中使用的前者。当您显式使用它或使用 ConsumerTemplate 时,使用后者来使用接收方法。
Camel 组件能够开箱即用地使 Consumer 适应 PollingConsumer。
所以这取决于你是否想构建一个用于路由的 Camel 组件,你可以只创建一个消费者。并让它能够同时进行轮询和订阅。获得数据后,创建一个 Exchange 并调用处理器对其进行路由。
有关文档,请查看 Camel 网站和/或 Camel in Action 书中的第 11 章,其中涵盖了创建自定义组件。