Whatsapp(왓츠앱) 시스템 디자인
Key Requirements 왓츠앱은 전 세계의 수많은 유저들이 빈번하게 접근하는 확장성이 뛰어난 시스템이기 때문에 신뢰성있는 시스템 디자인이 필수적이다. 그러므로 왓츠앱의 주요 요구사항을 식별하는 것은 굉장히 중요하다. 왓츠앱의 기본 요구사항 중 일부는 다음과 같다. 1:1 대화를 지원해야 한다. 마지막으로 본 시간과 메시지 확인을 표시하는 기능(전송, 도착, 읽음 표시) 종단 간 암호화된 미디어 전송 Capacity Estimation 우리의 목표는 대용량 트래픽을 수용할 수 있는 플랫폼을 설계하는 것이다. 이것을 위해 메시지와 유저의 수, 피크 타임의 트래픽, 데이터 저장소등 다양한 요소들을 고려해야 한다. 아래와 같은 상황으로 가정해보자. 하루에 100억건의 메시지가 10억명의 유저들을 통해 전..