logo

디스코드가 10조 개의 메시지를 저장하는 방법?!

language-logoCassandraDB
language-logoDiscord
language-logoElixir
language-logoPython

• Discord는 실시간 메시징을 위해 Elixir라는 기능적 프로그래밍 언어를 사용하며, 이는 erlang VM에서 실행된다. erlang은 통신 시스템 구축을 위해 만들어진 언어로, 분산 및 내결함성 시스템을 지원한다.
• Discord는 초당 수억 개의 메시지를 전송하는 채팅 메시징 시스템을 구동하기 위해 500개의 Elixir 시스템을 실행하고 있으며, 이를 통해 1,200만 명 이상의 동시 사용자를 처리한다.
• Discord는 데이터 저장을 위해 처음에는 MongoDB를 사용했지만, 데이터와 인덱스가 Ram에 맞지 않게 되면서 Cassandra로 마이그레이션했다. 그러나 Cassandra 역시 문제가 있어, 결국 Sila DB로 마이그레이션하게 되었다.

북마크
공유하기
신고하기
9분 분량
조회수 110
profile-image개발 영상
일 년 전
Copyright © 2025. Codenary All Rights Reserved.