피드로 돌아가기
How Epic Games Scales to 100M+ Concurrent Users
Dev.toDev.to
Infrastructure

1억 명 이상의 동시 접속자를 처리하는 Epic Games의 분산 상태 관리 전략

How Epic Games Scales to 100M+ Concurrent Users

Karan Kumar2026년 4월 13일5advanced

Context

초당 수천 건의 업데이트가 발생하는 대규모 멀티플레이어 환경에서 단일 전역 데이터베이스 사용 시 발생하는 Latency 및 State Explosion 문제 분석. 실시간 물리 연산과 사용자 메타데이터 간의 상호 의존성으로 인한 시스템 병목 현상 해결이 핵심 과제.

Technical Solution

  • Game World(실시간 물리/전투)와 Player Meta-state(스킨/레벨)를 분리한 Hybrid Distributed Model 설계
  • 지역별 Dedicated Server(DS)에서 상태를 Local Checkout 하여 처리 후 종료 시점에 Global Service로 Commit 하는 구조 채택
  • Redis 기반의 Distributed Caching 레이어를 도입하여 Hot Path의 DB 직접 접근을 차단하고 Eventual Consistency 구현
  • Kafka 등의 Message Bus를 활용한 Event-Driven Architecture로 XP 획득과 같은 비정기적 업데이트를 메인 루프에서 분리
  • UDP(Fast Lane)를 통한 무손실 패킷 처리와 TCP/gRPC(Reliable Lane)를 통한 원자적 트랜잭션 처리의 이원화
  • Interest Management 기법을 적용하여 클라이언트 전송 데이터를 반경 기반으로 필터링함으로써 O(n^2) 네트워크 부하 완화

- 실시간 성능이 중요한 도메인에서 물리 엔진 루프와 영속성 계층의 완전한 분리 여부 검토 - 데이터 중요도에 따라 UDP와 TCP 프로토콜을 혼용하는 하이브리드 통신 전략 수립 - Cold Start 방지를 위한 Warm Pool 기반의 인스턴스 사전 프로비저닝 비용 대비 UX 이득 계산 - 모든 클라이언트에 전체 상태를 전송하는 대신 사용자 관점의 필요한 데이터만 전송하는 필터링 로직 구현

원문 읽기