한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

게임 렉 백서 › L13 서버 구성과 운영

로그인 대기열 상한·재접속 유예 부족 Login queue cap / no reconnect grace

원인 ID in-login-queue · 주 담당 게임개발팀·서버 개발 · 함께 게임개발팀·클라이언트 개발, 인프라팀·서버 인프라

그림과 실험이 있는 원본 카드로 열기 →

출시·점검 직후 접속이 몰리면 로그인 대기열이 상한에 닿아 새 대기를 거절하고, 기다리던 유저는 잠깐 끊긴 사이 자리를 잃어 맨 뒤로 돌아갑니다.

왜 로그인 서버가 한 번에 받을 수 있는 인원보다 접속하려는 사람이 많아 대기열을 두고, 너무 길어지면 서버를 지키려고 새 대기를 거절함 → 그러면 대기열이 길수록 기다리는 시간이 늘고 그동안 와이파이·모바일망이 잠깐만 끊겨도 대기 자리를 잃음 → 화면에서는 접속 불가·무한 로딩, 대기 중 오류와 함께 게임 종료, 다시 맨 뒤에서 기다림

증상
접속 불가·무한 로딩, 접속 끊김
요인
정체
누가 겪나
서버 전체, 나만
언제
접속·점검 직후, 저녁 피크 시간
담당
주 담당 게임개발팀·서버 개발 · 함께 게임개발팀·클라이언트 개발, 인프라팀·서버 인프라
게임개발팀 할 일
서버: 대기열 상한을 로그인 서버가 실제로 처리할 수 있는 양에 맞추기, 대기 중 끊긴 유저의 자리를 일정 시간 지켜 주기(재접속 유예), 순번과 예상 대기 시간 보여 주기, 대기열 길이·거절 수·대기 중 끊김 수를 지표로 남기기. 클라이언트: 대기 중 끊기면 게임을 끄지 않고 같은 자리로 자동 재접속, 재시도 간격은 지수 백오프와 지터로 흩뜨리기.
인프라팀 할 일
서버 장비·OS: 출시 전 부하 시험으로 로그인·로비 서버의 처리 한도를 재고 출시 때는 예비 장비를 미리 붙일 수 있게 준비, 대기열 지표를 접속 시도 수와 같은 그래프로 보기.
수치 감각
2021년 FINAL FANTASY XIV 확장팩 출시 때는 논리 데이터센터마다 대기 인원이 17,000명을 넘으면 새 대기를 거절했습니다(Error 2002). 대기 중 연결이 끊기면 로비 서버가 수십 초~1분 기다려 주고 그 안에 다시 붙으면 대기열 중간부터 이어 가게 했습니다.
그래프에서는
한도에 닿아 평평해짐 · 로그인 대기열 길이, 상한 도달로 거절한 수, 대기 중 끊김 수
확인할 곳
로그인·로비 서버가 남기는 대기열 길이, 평균 대기 시간, 상한 도달로 거절한 수, 대기 중 끊김 수를 접속 시도 수와 같은 그래프에 놓고 봄
이러면 맞음
출시·점검 직후 대기열 길이가 상한에 닿아 평평해지는 동안 거절 수가 늘고, 대기 중 끊김이 와이파이·모바일망 유저에게 몰림
이러면 아님
대기열은 짧은데 로그인이 느리면 DB(db-login-storm)나 운영체제의 접속 대기열(so-backlog) 쪽
확인 수단
게임 서버·클라이언트의 로그·지표가 필요
더 알아보기
로그인이 몰려 DB가 느려지는 경우는 “로그인 폭주와 N+1 쿼리”, 운영체제의 접속 대기열이 넘치는 경우는 “접속 대기열(backlog) 넘침”에서 다룹니다. 이 항목은 게임이 일부러 두는 로그인 대기열의 설계 문제입니다. 대기열 상한은 로그인 서버를 지키는 안전장치라 없앨 수 없습니다. 넘치는 요청을 일찍 거절해야 처리할 수 있는 요청을 계속 처리할 수 있습니다. 대신 거절과 끊김이 유저에게 주는 손해를 줄여야 합니다. 대기열이 길어질수록 와이파이·모바일망처럼 회선이 불안정한 유저에게 오류가 몰립니다.
실제 사례
Square Enix 2021: FINAL FANTASY XIV 확장팩 출시 혼잡과 로그인 대기열 오류

출처

  1. Response to Congestion (as of Dec. 11) Square Enix
    논리 데이터센터마다 대기 인원이 17,000명을 넘으면 로그인 서버가 다운되지 않게 새 대기를 거절(Error 2002), 대기 중 끊기면 로비 서버가 수십 초~1분 기다려 그 안에 다시 붙으면 대기열 중간부터, 넘기면 맨 뒤로
  2. Using load shedding to avoid overload Amazon Builders' Library
    넘치는 요청을 일찍 거절해 처리할 수 있는 요청을 계속 처리하는 부하 차단

함께 보면 좋은 원인

같은 층: L13 서버 구성과 운영

같은 증상(접속 불가·무한 로딩)의 다른 층 원인

그림과 실험이 있는 원본 카드 보기