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

게임 렉 백서 › L9 서버 게임 프로세스

한 대상에 몰린 전투 (월드 보스) Hot entity / combat event fan-out

원인 ID sp-hot-entity · 주 담당 게임개발팀·서버 개발

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

수백 명이 보스 하나를 동시에 때리면, 보스 한 마리의 계산이 한곳에 몰리고 타격 정보가 보는 모두에게 전송됩니다.

왜 수백 명이 한 보스에게 스킬·버프·디버프를 쉬지 않고 사용 → 그러면 보스의 체력·어그로 목록·디버프 계산이 한곳에 몰리고 타격마다 데미지 숫자·이펙트 패킷을 보는 모두에게 전송 → 화면에서는 스킬이 늦게 들어가고 데미지 숫자가 몰아서 뜸, 보스 주변만 슬로우모션

증상
입력 지연, 몰아치기, 슬로우모션
요인
정체, 지연
누가 겪나
특정 장소·채널
언제
사람이 몰릴 때
담당
주 담당 게임개발팀·서버 개발
게임개발팀 할 일
남의 데미지 숫자·이펙트는 묶거나 생략, 한 대상에 걸리는 디버프 수 상한, 타격 처리를 여러 틱에 나누기.
수치 감각
800명이 초당 2번씩 때리면 초당 1,600번의 타격. 이를 보는 800명에게 모두 알리면 초당 128만 개의 메시지입니다.
그래프에서는
인원·부하를 따라 오름 · 서버 틱 시간, 송신 메시지 수
확인할 곳
보스전 시각의 틱 시간과 송신 패킷 수를 보스 주변 인원과 함께 보고 가능하면 대상별 초당 이벤트(타격·버프·디버프) 수
이러면 맞음
보스 주변 인원이 늘 때 틱 시간과 송신량이 가파르게 늘고 보스 한 마리의 초당 이벤트 수가 다른 대상보다 수십 배 많음
이러면 아님
보스와 상관없이 한곳에 모이기만 해도 똑같이 느려지면 시야 계산이나 브로드캐스트 폭증 쪽
확인 수단
게임 서버·클라이언트의 로그·지표가 필요

출처

  1. HED-GP Technical Retrospective: What a HED-ache CCP Games
    공격 한 번도 보는 모든 클라이언트에 알려야 해서 n명이 n명에게 알리는 O(n²) 부담이 생기고, 메시지가 많은 드론 공격은 이 부담이 더 빨리 커짐

함께 보면 좋은 원인

같은 층: L9 서버 게임 프로세스

같은 증상(입력 지연)의 다른 층 원인

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