지스타 2021에서는 게임 부스 외에도 게임 관련 업계 사람으로부터 다양한 이야기를 들어볼 수 있는 컨퍼런스가 18-19일 양일간 벡스코 컨벤션홀에서 진행된다.
넷텐션 배현직 CTO는 18일 '더 안정적이고 빠른 게임서버 개발방법'이라는 주제로 컨퍼런스 강연을 진행했다.
넷텐션은 일반적인 게이머에게는 익숙하지 않을 수 있는 업체지만, 현재 13개국 200여개 게임에 사용되고 있는 국내 최초 상용 서버 엔진 '프라우드넷'을 개발한 업체로 2017년 펄어비스가 넷텐션의 지분을 100% 인수해 완전자회사로 편입된 바 있다.

배현직 CTO는 게임 유형에 따른 다양한 서버 구조를 소개하며 이에 따른 서버 문제까지 유형별로 소개했다.
대표적인 서버 문제로는 '서버 크래시', '서버 무응답', '서버 랙', '서버 오동작', '해킹'이 정확히 어떠한 차이점이 있는지, 그리고 이러한 문제를 정확히 진단하기 위한 방안을 차례대로 언급했다.
가장 먼저 시행되는 것은 '서버 테스트 커버리지이다. 플레이어의 수와 테스트 목적에 따라 테스트 형태가 다소 달라지는데, 예컨대 소수 플레이어가 단순 기능 테스트를 해야 한다면 유닛 테스트를 진행하는 반면, 복잡 기능 테스트를 할 경우 사내 휴먼 테스트를 진행한다. 단순 기능 세트이지만 다수 플레이어를 테스트 하려면 Bot 테스트를 진행하며, 다수 플레이어에게 복잡한 기능을 테스트 하기 위해서는 '소프트 런칭'을 진행할 수밖에 없다. 하지만 이러한 테스트에는 시간과 기회비용, 개발을 위한 추가 개발 등의 투자가 많이 들어가기 때문에 실질적으로 테스트를 진행하기가 어랴운 편이다.
서버 테스트 외저으로도 클라이언트에서 버그를 찾아야 한다. 다만, 서버 차원에서의 문제와는 다소 다른 편이다. 클라이언트 개인의 문제는 재부팅 등을 통해 차단을 할 수 있으며, 각각의 클라이언트가 가진 데이터를 서버 차원에서 보존하기 때문에 디버깅 만으로 문제를 해결할 수 있다.
하지만 서버를 클라이언트처럼 디버깅을 할 경우 일시 정지가 되며 서버 내에 연결된 클라이언트가 모두 정지되기 때문에 실질적으로 서버 운용을 하면서 라이브 중인 서버에 디버깅을 할 수는 없다. 때문에 서버 개발자는 다른 개발자와 다르게 디버깅을 사용할 수 없고, 반대로 모든 정보가 기록된 로그를 필터링 기법으로 분석해 사용해야 한다.
현재 많은 게임에서 다양한 상황에 드앵흐가 위해 하나의 서버를 운용하기보다는 수평 확장을 통해 다수의 서버를 운용하는 것이 일반적이다. 다만 수평 확장에서도 문제가 발생하지 않는 것은 아니다. 다수의 서버를 연결해주는 연결고리가 끊기거나, 다수의 서버 전체에 동일한 정보가 들어가지 못할 경우 문제가 번질 수 있기 때문이다. 이를 추가적으로 보완하기 위해 순차적으로 진행하는 '롤링 업데이트' 방식도 수평 확장의 장점이기도 하다.
수평 확장 시에는 단순히 무작정 늘리는 것이 아니라 합리적으로 '왜 넣어야 하는지'에 대한 토의가 필요하며, 서버 개발자와 타 개발자간에 이러한 과정이 세밀해질수록 더 좋은 구조의 서버를 만들어낼 수 있는 것이다. 물론 이러한 논의를 통해 해결할 수 있는 것 역시 한계가 있다.

넷텐션이 개발한 프라우드넷 2는 '디버그 트레이스'라는 기능을 만들어 서버를 멈추지 않더라도 디버깅을 할 수 있는 형태로 서비스를 지원한다. 로그에 디버그 트레이스 지점을 남겨 좀 더 상세하게 디버거에 가깝게 상황을 파악할 수 있다. 또한, 이러한 시스템이 적용될 경우 서비스가 느려지는 것을 염려할 수 있는데, 라이브 서버에 영향이 거의 가지 않는 상태로 서비스를 이용할 수 있다는 특징이 있다.
이외에도 크래시 리포트, 핫픽스 리로드 등의 강력한 기능을 지원해 서버를 좀 더 안정적으로 운용할 수 있도록 도움을 준다. 엔티티 레플리케이션 기능을 이용해 캐릭터 데이터 송수신 코드와 레이턴시 마스킹, 가시 영역 최적화 코딩 등을 자동화하여 전부 생략하고 문제의 원인을 빠른 속도로 탐색/패치 할 수 있도록 만들어주는 특징이 있다.

한편, 넷텐션은 현재 2021년말에서 2022년에 프라우드넷 2를 공개할 예정이며, 정식 출시까지 베타 버전을 무료로 체험해볼 수 있다.
[(부산)이정규 기자 rahkhan@chosun.com] [gamechosun.co.kr]
ⓒ기사의 저작권은 게임조선에 있습니다. 허락없이 무단으로 기사 내용 전제 및 다운로드 링크배포를 금지합니다.

일곱개의 대죄 오리진

