11.3. polling Consumer
概述
图 11.2 “polling Consumer Pattern” 中显示的 轮询消费者 模式是在 Apache Camel 组件中实施消费者端点的模式,因此仅与需要在 Apache Camel 中开发自定义组件的编程人员相关。现有组件已经有消费者实施模式,对它们有硬连接。
符合此模式的消费者会公开轮询方法、receive ()
、receive (long timeout)
和 receiveNoWait ()
,如果可以从被监控的资源获得新的交换对象。轮询消费者实施必须提供自己的线程池来执行轮询。
有关此实现模式的详情,请参阅 第 38.1.3 节 “消费者模式和线程”、第 41 章 消费者接口 和 第 37.3 节 “使用 Consumer 模板”。
图 11.2. polling Consumer Pattern
调度的轮询消费者
许多 Apache Camel 使用者端点使用调度的轮询模式来在路由开始时接收消息。也就是说,端点似乎实现事件驱动的消费者接口,但在调度的轮询内部用于监控为端点提供传入消息的资源。
有关如何实现此模式的详情,请查看 第 41.2 节 “实施 Consumer 接口”。
quartz 组件
您可以使用 quartz 组件,通过 Quartz 企业调度程序提供调度的消息交付。详情请参阅 Apache Camel 组件参考指南 和 Quartz 组件中的 Quartz。