실시간으로 서버와 네트워크를 통해 정보를 주고받아야 하는 모바일 게임. 하지만 서버 문제는 모바일 게임을 만드는 데 있어 개발자들의 공통된 고민 사항이다. 이에 그리가 과거 사례와 경험을 공유함으로써 해법을 제시했다.
4일 열린 ‘게임테크 2013’에는 ‘모바일 MORPG 서버와 백앤드플랫폼 개발기’란 제목으로 그리의 안준수 PD가 강연자로 나섰다. 이 자리를 통해 안 PD는 모바일 게임을 개발하고, 서비스하는 데 있어 개발자들이 고민하기 쉬운 서버를 어떻게 하면 안전하고 효율적으로 운영할 수 있는지에 대해 설명했다.
먼저 안준석 PD는 개발 초기와 중기, 서비스 오픈과 프로파일링 등 순서에 맞춰 효율적인 게임 서버관리 비법을 공개했다.
안 PD는 강연을 시작하면서 연결 복구를 위한 구조를 처음부터 작성해야 한다고 강조했다. 처음 게임을 계획할 당시부터 서버의 문제를 고민하게 이에 대한 알맞은 장치를 마련해야 한다는 것.
이어 그는 작년 말 2개월 만에 MORPG 게임을 준비해 도쿄게임쇼에 출품했던 경험을 소개했다. 당시 C샵(#) 서버를 이용함으로써 생산성과 속도를 높일 수 있었다고 설명했다. 또 네트워크 연결이 끊어졌을 때를 대비하기 위해 나중에는 경량형 웹서버인 HTTP 서버를 만들어 사용했다고 말했다. PHP 웹플밍으로 인해 코드 통합도 안 되고, 디버깅도 힘들었기 때문이라고.
개발 중기에는 통합인증, 빌링, 랭킹 등 공통백앤드플랫폼이 필요하다는 판단으로 이 회사는 ‘GXP’(GREE neXt Platform)라는 백앤드서비스 플랫폼을 만들었다. 또 서비스 후에는 무정지 패치 전략으로 서버 중지 없이 실시간 패치 하는 기술을 구현했다. 아울러 ‘블랙앤화이트 리스트’를 이용해 각 프로세스별 동접을 제어했다.
이 외에도 안 PD는 분산 서버 잔 통신을 위한 ‘서비스 버스’(RabbitMQ)를 활용해 게임 클라이언트와의 다른 플랫폼과의 통신을 원활하게 만든 사례도 소개했다.
관련기사
- [게임테크]"모바일 게임으로 돈버는 법은?"2013.07.04
- [게임테크]"모바일 게임, 발상 전환해야"2013.07.04
- [게임테크]cocos2d-x, “모바일에 최적 엔진”2013.07.04
- [게임테크] 모바일 게임 개발, “초보자도 쉽다”2013.07.04
안준수 PD는 “서비스 프로파일링 함에 있어 모니터링을 통해 최적화된 각종 설정값을 찾아내는 것이 중요하다”면서 “분산서버들을 위한 코디네이터가 필요하고 서버를 분산시키고 통합시켜주는 서버를 운영하는 것이 핵심”이라고 조언했다.
또 그는 “스케일의 문제는 이론과 계산으로 예측할 수 없다”면서 “장인의 손길은 서비스 프로파일링으로부터”라는 말로 강연을 마쳤다.