리전이 다르면 캐릭터 ID가 겹친다: 파이프라인 전역 Redis 락 설계
같은 캐릭터의 동시 요청을 핸들러마다 막는 대신 파이프라인 한 곳에서 직렬화하면서, 락 키와 파이프라인 위치를 정한 기준
devlog / log
게임 서버와 인프라를 운영하며 겪은 문제와 해결 과정을 기록합니다.
Kafka, gRPC, Kubernetes, .NET을 주로 다루고, 잘 안 풀렸던 장애도 그대로 남깁니다.
김재중 · 백엔드 · 게임 서버 · 이력서 →
13 / 28편
같은 캐릭터의 동시 요청을 핸들러마다 막는 대신 파이프라인 한 곳에서 직렬화하면서, 락 키와 파이프라인 위치를 정한 기준
엑셀 데이터 브랜치마다 Unity와 서버가 같은 데이터를 보도록 Integration API, AppVersion, GitOps values, Helm 배포를 연결한 기록
Kafka 3.x의 KRaft 모드 변화와 로그 세그먼트, 희소 인덱스, 제로 카피 기술을 통한 성능 최적화 원리를 정리한다.
StackExchange.Redis로 AWS ElastiCache 클러스터의 모든 키를 안전하게 조회하는 방법과 아키텍처 이해
Google OAuth, Calendar API, Webhook 동기화로 회의실 예약 시스템 Roomly를 설계하고 구현한 과정을 정리한다.
OTel SDK와 Collector 사이드카, tail-based sampling, Jaeger v2 + OpenSearch로 분산 트레이싱을 구성한 기록
모바일 게임의 인앱 결제 시스템 구축 경험. 구글/애플 영수증 검증, 중복 지급 방지, 실패 시나리오 처리까지.
Google Play Developer API 호출을 위한 OAuth 2.0 인증 체계와 Service Account 활용법 정리
gRPC의 4가지 통신 패턴부터 Interceptor, Deadline, Load Balancing까지. 실전에서 바로 쓸 수 있는 gRPC 가이드.
Protobuf의 바이너리 인코딩 원리부터 실전 활용까지. Wire Type, Varint, ZigZag 인코딩을 직접 계산해보며 이해한다.
Kafka Consumer의 GROUP_INSTANCE_ID 설정을 변경하면서 겪은 리밸런싱 폭풍과 파티션 할당 문제 해결기
Firebase Cloud Messaging과 Kafka를 활용한 대규모 푸시 알림 시스템 설계 및 구현 경험