227.7. 트릴 수 있는 Cursor Consumer
MongoDB는 *nix 시스템의 tail -f 명령처럼 커서를 열어 두어 컬렉션에서 지속적인 데이터를 즉시 소비할 수 있는 메커니즘을 제공합니다. 이 메커니즘은 클라이언트가 새 데이터를 가져오기 위해 예약된 간격으로 다시 ping하는 대신 서버가 사용 가능하게 되는 대로 새 데이터를 클라이언트에 푸시하기 때문에 예약된 폴링보다 훨씬 효율적입니다. 또한 중복된 네트워크 트래픽도 줄입니다.
tailable 커서를 사용해야 하는 것은 하나만 있습니다. 컬렉션에는 "capped collection"이어야 합니다. 즉, N개의 오브젝트만 보유하고 제한에 도달하면 원래 순서에 따라 이전 오브젝트를 플러시합니다. 자세한 내용은 http://www.mongodb.org/display/DOCS/Tailable+Cursors 에서 참조하십시오.
Camel MongoDB 구성 요소는 tailable 커서 소비자를 구현하므로 Camel 경로에서 이 기능을 사용할 수 있습니다. 새로운 객체가 삽입되면 MongoDB는 이를 던질 수 있는 커서 소비자로 기본적으로 DBObject로 푸시합니다. 이 사용자는 Exchange로 변환하고 경로 논리를 트리거합니다.