IT

툭하면 서버 다운? 온라인게임 서버 관리의 비밀

홍재의 기자 입력 2013.06.15. 08:23 수정 2013.06.15. 08:23
글자 크기 조절 레이어
[겜엔스토리]<5>넥슨 메이플본부 고세준 실장, 신용철 메이플라이브팀 부팀장

[머니투데이 홍재의기자][편집자주] 게임보다 재밌다. 게임보다 흥미진진하다. '대박'친 자랑부터 '쪽박'찬 에피소드까지. 달달한 사랑이야기부터 날카로운 정책비판까지. 소설보다 방대한 게임의 세계관, 영화보다 화려한 게임의 그래픽, 첨단과학을 선도해가는 게임의 인공지능. '게임 엔지니어 스토리'는 이 모든 것을 탄생시킨 그들의 '뒷담화'를 알려드립니다.

[[겜엔스토리]<5>넥슨 메이플본부 고세준 실장, 신용철 메이플라이브팀 부팀장]

"50만명 정도를 수용할 수 있을 것이라고는 예상했습니다. 그런데 60만명이 넘어가는 순간 우리도 믿지 못했어요. 문제가 생기는 것 아닐까 걱정하면서 대기열을 만들어야 되는지 주목하고 있는데 어느새 62만명까지 올라가더군요"

넥슨의 '메이플스토리'는 지난 2011년 8월 국내 동시접속자수 신기록을 세웠다. 무려 62만명이 게임에 접속했다. 흥행을 자부하는 MMORPG(다중접속역할수행게임)는 대부분 동시접속자수 10만~20만명을 '대박'으로 분류한다. 그런데 60만명을 넘었으니 국내에서는 전무후무한 신기록으로 평가받는다.

국내 메이플스토리 누적 회원 수는 1800만명에 이른다. 김정주 넥슨 대표가 직접 "메이플스토리 모르는 청소년은 간첩이다"라고 농을 칠 정도로 넥슨이 자랑하는 대표 게임이다.

단연 서버관리 기술도 내로라할 만하다. 국내 게임 전문가들은 한국의 서버 관리 기술이 세계에서도 인정받을 수준이라고 말한다. 한국의 경우 수많은 사용자가 한 장소에 모여 전투를 벌이는 MMORPG 장르가 특화돼있다. 많은 사용자가 몰리는 만큼 게임이 원활하게 작동할 수 있도록 조절하는 것도 매우 어려운 작업이다.

이에 더해 PC방이라는 특이한 문화 때문에 특정 시간에 사용자가 몰리는 경향이 뚜렷하다. 특히 메이플스토리와 같이 청소년들이 즐겨하는 게임의 경우에는 방학이나 주말에 사용자가 급격히 몰리기 때문에 서버 관리가 쉽지 않다.

최근 들어 서버 관리에 대한 문제가 대두되고 있다. 전세계적으로 인기를 끌며 국내에서도 PC방 점유율 40%를 넘어선 LOL(리그오브레전드)의 접속장애를 비롯해 일부 인기 모바일게임도 접속장애를 겪고 있기 때문. 으레 접속자가 몰리면 서버점검이 이뤄지던 과거에 비교할 때 최근 이용자들은 비정기적인 서버점검이나 긴 대기열을 이해하지 못하는 것도 사실이다.

물론 62만명 동시접속자 신기록을 세운 넥슨 메이플스토리도 처음부터 서버 관리가 완벽했던 것은 아니다. 지난 2003년 출시 후 10년이라는 세월이 흐르는 동안 축적된 노하우가 현재의 기술을 완성시켰다.

고세준 메이플본부 실장은 서버 운영에 있어 가장 중요한 부분은 '예측'이라고 전했다. 그는 "이벤트를 하거나 새로운 콘텐츠를 넣었을 때 어떻게 서버에 영향을 미칠 것인지 정보가 누적돼 있어야 한다"며 "물리적으로 수용할 수 있는 한계가 있기 때문에 부하 테스트 등을 거쳐서 미리 정보를 갖춰놓아야 한다"고 설명했다.

운영 기술이 발전하면서 최근에는 게임 내 문제가 생겼을 경우에도 서버 전체를 닫지 않고 부분적으로 접근을 제한하는 방법을 취하고 있다. 예를 들어 게임 내 특정 지역에서 오류가 발생할 경우 전체적인 서버 점검에 들어가지 않고도 특정 지역만 접근 차단해 오류를 수정하는 것이다.

이런 부분에 있어 MMORPG는 특히 관리가 어려운 편이다. 단판으로 구성된 게임의 경우 오류를 수정한 뒤 해당 게임이 끝났을 때부터 오류를 수정한 업데이트를 실시해주면 되지만 MMORPG의 경우 게임 중단 없이 진행되는 상황 내에서 오류를 수정해줘야 하기 때문. 국내 서버 관리 기술이 세계적으로 인정을 받는 이유 중 하나다.

우리가 흔히 서버다운이라고 부르는 문제는 사실 그 이유를 정의내리기가 쉽지 않다. 서버만 해도 로그인을 담당하는 서버, 채널을 담당하는 서버, 데이터베이스를 담당하는 서버 등 다양하게 나눠져 있어 어느 한쪽에서만 문제를 일으켜도 원활한 게임 운영이 불가능하다.

아울러 서버에 문제가 생길 때보다도 게임 프로그램 오류가 발생하는 경우가 대부분이다. 메이플스토리 서버 부분을 담당하는 신용철 메이플라이브팀 부팀장은 "보통 서버만의 문제는 없다"고 전했다. 그는 "개발 프로그래머는 개발 과정에서 라이브서비스에 대한 고려를 해야 한다"며 "서버에 부담을 덜 주면서도 고퀄리티를 구현하는 것이 기술"이라고 강조했다.

물론 서버의 물리적인 사양을 관리하는 것도 필요하다. 서버 자체가 고가의 컴퓨터와 마찬가지이기 때문에 더 높은 수준의 게임을 구동하기 위해서는 그만큼 하드웨어의 성능도 필요한 것.

즉, 원활한 게임 운영을 위해서는 서버의 사양, 서버에 부담을 주지 않는 프로그램을 개발할 수 있는 기술력, 수요를 미리 예측하고 차선책을 준비할 수 있는 경험 등 3박자가 동시에 맞아떨어져야 한다.

이렇게 3박자가 완벽하게 맞아 떨어지는 데도 서버가 문제를 일으키는 경우도 있다. 웃어넘길 수만은 없는 황당한 사고 등의 이유다. 고 실장은 "몇 년 전 아무런 이유 없이 서버가 다운돼 확인을 했더니 서버가 몰려있는 IDC(인터넷데이터센터) 때문 이었다"며 "IDC에 이유를 물었더니 관리 직원이 실수로 전원을 뽑았다고 하더라"고 전했다.

머니투데이 홍재의기자 hjae@