153
6
장
확정적 스트림 처리
유예 기간(
grace
period
)
윈도가 완료된 것으로 간주되면 곧바로 윈도 결과를 출력합니다. 그런 다음 미리 정해진 유
예 기간 동안 윈도를 가용한 상태로 열어둡니다. 이 윈도에 지각 이벤트가 도착할 때마다 집
계를 업데이트해서 새로운 값을 출력합니다. 지각 이벤트가 도착하는 즉시 업데이트가 발생
한다는 점만 다를 뿐 나머지는 대기 전략과 비슷합니다.
마이크로서비스가 얼마나 더 기다리든, 결국 너무 늦게 도착한 이벤트는 쓸모가 없으니 폐기해
야겠죠. 마이크로서비스에서 지각 이벤트를 처리하는 기술적인 규칙이 딱히 정해져 있는 것은
아니니 여러분의 비즈니스 요건이 충족되는지 확인해보세요. 지각 이벤트의 처리 지침이 비즈
니스 요건에 명시되어 있지 않다면 이는 비즈니스로 풀어야 할 문제입니다.
지각 이벤트를 처리하는 가이드라인을 정하는 데 도움이 될 만한 질문을 몇 가지 정리합니다.
●
지각 이벤트가 발생할 가능성은 어느 정도인가?
●
서비스는 얼마나 오랫동안 지각 이벤트를 기다려야 하나?
●
지각 이벤트를 누락시키면 비즈니스에 어떤 영향을 미치는가?
●
지각 이벤트를 받기 위해 오랜 시간 기다리면 어떤 점이 비즈니스 관점에서 이로운가?
●
상태를 유지하려면 디스크와 메모리가 얼마나 많이 필요한가?
●
지각 이벤트를 기다리는 비용이 그로 인해 얻는 혜택을 능가할 만큼 많이 드나?
6.8
재처리 대 준실시간 처리
불변 이벤트 스트림은 컨슈머 그룹의 오프셋을 되감아
rewind
임의의 시점부터 처리를 재연하는 ...