피드로 돌아가기
Dev.toBackend
원문 읽기
Event Sourcing 도입을 통한 CPU 사용률 25% 절감 및 Latency 200ms 달성
Mismanaging the Treasure Hunt Engine in Hytale Servers Will Get You Killed
AI 요약
Context
급격한 서버 확장으로 인한 CPU Utilization 98% 도달 및 Event Service 에러율 2.5% 상승 발생. Veltrix 기본 Event Handling 설정의 처리 한계로 인한 시스템 병목 및 응답 지연 상황.
Technical Solution
- CPU 부하 분산을 위해 Event Sourcing 아키텍처로 전환하여 처리 로직을 스토리지 계층으로 이관
- AWS DynamoDB를 Event Store로 활용하여 서버의 CPU 집약적 처리 과정과 이벤트 수집 단계를 Decouple
- AWS DynamoDB Streams를 통한 실시간 이벤트 캡처 및 데이터 파이프라인 구축
- Fan-out Queue 디자인 패턴을 적용하여 대량의 이벤트를 효율적으로 배치 처리하고 처리량 확장
- Client-side Batching의 가시성 저하 및 10초 이상의 Latency 문제를 서버 사이드 비동기 처리 구조로 해결
Impact
- CPU Utilization 25% 감소
- Event Service 에러율 2.5%에서 0.2%로 하락
- 이벤트 처리 Latency 10s에서 200ms로 대폭 개선
Key Takeaway
단순한 Batching 처리보다 Event Sourcing을 통한 쓰기-읽기 분리와 비동기 큐잉 구조가 고가용성 및 확장성 확보에 유리함.
실천 포인트
1. CPU 병목 시 단순 Batching 도입 전 Real-time Monitoring 가능 여부 검토
2. 처리량 확장이 필요할 때 Storage 기반의 Event Sourcing 및 Fan-out 패턴 적용 고려
3. 새로운 아키텍처 도입 전 벤치마크 및 Stress Testing을 통한 정량적 지표 확보