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