게임 렉 백서 › L13 서버 구성과 운영
외부 서비스 의존 External dependencies (auth, billing, platform)
원인 ID in-external · 주 담당 외부·외부 · 함께 게임개발팀·서버 개발
그림과 실험이 있는 원본 카드로 열기 →
플랫폼 로그인, 결제, 본인 인증 같은 외부 서비스가 느리거나 멈추면 그 단계에서 막힙니다.
왜 외부 인증·결제 서비스 장애나 지연 → 그러면 해당 단계에서 응답을 기다림 → 화면에서는 로그인 불가, 결제 실패. 이미 게임 중인 사람은 멀쩡
- 증상
- 접속 불가·무한 로딩, 씹힘·롤백
- 요인
- 정체
- 누가 겪나
- 서버 전체, 특정 기능만
- 언제
- 접속·점검 직후, 특정 행동을 할 때
- 담당
- 주 담당 외부·외부 · 함께 게임개발팀·서버 개발
- 게임개발팀 할 일
- 외부 호출에 타임아웃과 친절한 안내, 인증 결과 캐시, 결제 재시도·보상 절차.
- 외부 할 일
- 인증·결제·플랫폼 사업자에 장애 확인과 복구 요청, 유저에게 외부 서비스 장애임을 안내.
- 그래프에서는
- 어느 순간부터 계단처럼 올라감 · 외부 호출 응답 시간·오류율, 로그인 성공 수
- 확인할 곳
- 플랫폼 로그인·결제·본인 인증 같은 외부 호출별 응답 시간·오류율·타임아웃 수와 사업자의 상태 페이지
- 이러면 맞음
- 로그인·결제 실패가 몰린 시각부터 특정 외부 호출의 오류·타임아웃만 한 단계 올라 머물고, 사업자 상태 페이지에 같은 시각의 장애가 있음
- 이러면 아님
- 외부 호출은 정상인데 로그인이 막히면 로그인 서버 자체(스레드 풀 고갈, DB)나 운영체제의 접속 대기열(backlog) 쪽
- 확인 수단
- 게임 서버·클라이언트의 로그·지표가 필요
- 실제 사례
- Fastly 2021: Fastly CDN 전 세계 오류
AWS 2021: AWS us-east-1 내부 네트워크 혼잡
AWS 2025: AWS us-east-1 DynamoDB DNS 장애와 긴 복구
출처
- Timeouts, retries, and backoff with jitter AWS
Amazon Builders' Library. 응답을 기다리는 동안 스레드·연결 같은 자원을 점유하므로 타임아웃을 두고 부작용이 있는 API는 멱등성이 보장될 때만 재시도 - Circuit Breaker Pattern Microsoft Azure
실패할 가능성이 큰 호출은 타임아웃까지 기다리지 않고 바로 거부해 응답 시간을 지킴 - REL05-BP01 Implement graceful degradation to transform applicable hard dependencies into soft dependencies AWS
AWS Well-Architected. 의존 서비스가 장애여도 약간 오래된 데이터로라도 핵심 기능을 유지(인증 결과 캐시의 근거)
함께 보면 좋은 원인
같은 층: L13 서버 구성과 운영
같은 증상(접속 불가·무한 로딩)의 다른 층 원인
그림과 실험이 있는 원본 카드 보기