WEBBOOK CHAPTER

MongoDB 8.2, 입문에서 시니어까지: 49장. Change Stream Consumer를 재시작 가능하게 만든다

49장. Change Stream Consumer를 재시작 가능하게 만든다

resume token은 event 처리와 같은 업무 transaction에 저장할 수 없는 외부 DB 경계가 있을 수 있다. 먼저 effect의 idempotency를 만들고 event id/document version으로 dedup한다. effect 성공 뒤 token 저장 전 crash를 재현해 중복이 무해한지 확인한다. token을 매 event 또는 batch로 저장할 때 RPO와 비용을 정한다.

invalidate, history lost, schema version, out-of-order consumer와 backpressure를 다룬다. resume 불가하면 snapshot rebuild와 cutover cursor를 사용하고 처리 중 새 event를 잃지 않는다. lag은 count보다 oldest event age로 alert한다. payload 개인정보를 log에 복사하지 않는다.