Daily iOS
iOS 시스템 디자인

실시간 뉴스피드 순서 보장

실시간 소셜 뉴스피드가 WebSocket 증분 이벤트와 REST 초기 목록을 함께 받습니다. 초기 동기화 중 이벤트가 유실되지 않게 하려면 두 채널을 어떤 순서로 붙이겠습니까?

면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
짧은 답 보기

WebSocket을 먼저 열어 이벤트를 버퍼에 쌓기 시작한 뒤 REST로 스냅샷을 받고, 스냅샷에 실린 sequence 번호보다 큰 버퍼 이벤트만 순서대로 적용해 스냅샷 생성과 소켓 연결 사이의 틈에서 생긴 이벤트를 놓치지 않는다.

받은 질문 공유