Daily iOS
iOS 시스템 디자인

온라인 상태 표시

연락처 목록에 각 사용자의 '온라인/오프라인/마지막 접속' 표시를 넣으려 합니다. 앱이 강제 종료되거나 연결이 끊겨 오프라인을 스스로 알리지 못하는 경우까지 감안해, 클라이언트가 자기 상태를 서버에 어떻게 보고하게 설계하겠습니까?

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

내 상태는 포그라운드 진입/이탈 이벤트 + 소켓 하트비트로 서버에 보고하고, 서버가 타임아웃으로 오프라인을 판정한다. 타인 상태는 화면에 보이는 사용자만 구독하고 서버는 변화가 있을 때만 델타를 보낸다.

받은 질문 공유