db-cache

Game Server DB 캐싱

문제

  • 미국에 game server를 배포한 뒤 DB 접근 지연 발생
  • DB를 game server와 같은 서버에 띄운 조건과 비교해 DB 접근 지연 확인

변경

  • parameter처럼 실행 중 바뀌지 않는 데이터를 서버 시작 시 읽어 캐싱
  • 게임 실행 중 같은 데이터를 반복 조회하던 부분을 캐시 조회로 변경

결과

캐싱 적용 전후의 프레임 간격, 시전 응답 시간, 세션 생성 시간 비교

항목 적용 전 적용 후
프레임 사이 최대 간격 11.1초 98ms
1초 초과 정지 88회 0회
Watchdog이 회수한 세션 1개 0개
시전 응답 시간 중앙값 813ms, 최대 17.5초 관측값 모두 50ms 이하
40초 경기에서 받은 프레임 60~460개 724~762개
세션 생성 시간 2.3~2.7초 4.4~5.2초
  • 경기 중 정지 횟수 감소
  • 세션 생성 시간은 2.3~2.7초에서 4.4~5.2초로 증가