라인
-
Line | 오픈채팅 시스템 설계📖 개발 공부 2024. 2. 18. 02:24
“LINE 오픈챗 서버가 100배 급증하는 트래픽을 다루는 방법”을 보면서 오픈 채팅 시스템 설계를 정리한 내용이다! 오픈 채팅 시스템의 아키텍처는 다음과 같다. 채팅의 다양한 이벤트(메시지 전송, 메시지 반응, 메시지 읽음 등)들을 채팅 서버에 보낸다.해당 이벤트들을 모두 스토리지에 저장한다.그리고 Kafka에 해당 이벤트들을 발행한다.푸시 서버는 해당 이벤트들을 소비하여, 사용자들에게 해당 이벤트가 발생했다고 알린다.사용자는 해당 이벤트를 조회한다. 이때 스토리지에 접근하여, 새 메시지를 화면에 추가하는 액션을 실행한다. 이 아키텍처에서 트래픽이 급증할 수 있는 패턴들을 살펴보자.Hot Pattern 1: 수십개의 메시지를 주고받는 핫 챗만약 한 채팅에 5천명 이상의 사용자가 있다고 해보자.이때 [..