95.9. 消费者
有几种类型的消费者:
- Tailable Cursor Consumer
- Change Streams Consumer
95.9.1. Tailable Cursor Consumer 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
MongoDB 提供了一种机制来即时消耗集合中持续数据的机制,使光标保持打开,就像是 *nix 系统的 tail -f 命令一样。由于服务器在客户端可用时将新数据推送至客户端,而不是让客户端在计划的时间间隔返回以获取新数据,因此这种机制比调度的轮询更高效。它还可减少其他冗余网络流量。
使用 tailable 光标仅有一个必要条件:集合必须是 "capped collection",这意味着它只会保存 N 对象,当达到限制时,MongoDB 会按最初插入的顺序清除旧对象。如需更多信息,请参阅 http://www.mongodb.org/display/DOCS/Tailable+Cursors。
Camel MongoDB 组件实施可尾部的光标消费者,使此功能可用于 Camel 路由。当插入新对象时,MongoDB 会将它们作为 Document 推送到您的可尾部的光标消费者,后者会将它们转换为交换,并将触发您的路由逻辑。