“쉬운 길은 아니지만 분명 가능한 길이라고 믿는다”
다중접속역할수행게임(MMORPG)에서 논타겟팅(non-targeting) 전투를 구현해 화제를 불러일으킨 블루홀스튜디오의 ‘테라’의 서버 구조가 최초로 공개됐다.
25일 삼성동 코엑스 그랜드볼룸에서 개최된 ‘게임테크2010’에서 마지막 사례 연구 발표를 맡은 블루홀스튜디오 김현철 프로그램 서버 팀장은 ‘테라’의 서버 구조에 대한 노하우를 공개해 높은 관심을 불러일으켰다.
서두에서 김 팀장은 ‘테라’를 대표하는 용어가 바로 ‘논타겟팅’이 됐다며 이는 ‘테라’의 액션성을 강조하기 위한 선택 중 하나일 뿐이라고 설명했다. 심지어 ‘논타겟팅’은 그 자체만 놓고 보면 범위 공격의 일종이며 누구나 만들 수 있을 정도로 구현하는 것은 쉽다고 덧붙였다.

그러나 김 팀장은 MORPG에서는 당연시 여겨지는 ‘보고 피하기’를 MMORPG를 구현하기 위해서는 막대한 서버 부하가 걸리게 된다며 이를 극복하기가 결코 쉽지 않았다고 밝혔다.
김팀장은 ‘테라’의 막대한 CPU 및 서버 부하를 크게 두 가지로 극복했다. 코드 단위에서는 튼튼한 멀티쓰레드를 기반으로 하는 성능을 최대한 활용하는 방식이다. 또한 서버 구조 단위에서 역할에 따른 서버 분리를 통해 부하를 최소화하는 것이다.
이를 가능케하는 핵심은 블루홀 스튜디오가 자체 개발한 아비터 서버다. 월드 서버와 별도로 작동하는 아비터 서버는 월드 서버와 클라이언트를 잇는 중간자적인 역할을 한다.
‘아비터 서버’는 병렬적인 서버 구조를 취함으로서 확장성이 크게 증가되는 것이 특징이다. 하나의 아비터 서버에 복수의 월드 서버를 접속시킨다거나 다양한 조합으로 여러 개의 월드 서버를 하나의 ‘아비터 서버’에 배치가 가능한 방식이다.
이를 통해 게임 이용자들은 하나의 월드에서 게임을 플레이하는 느낌을 받지만 실제로 아비터서버를 통해 여러 월드 서버에 번갈아가면서 접속하게 되는 것이다.
흥미로운 발표 내용이 계속 이어지자 참석자들은 끊임없는 질문 공세를 펼치며 뜨거운 관심을 드러내 눈길을 끌었다.
이어 김 팀장은 “이러한 획기적인 서버 방식은 불과 1년 전에 도입됐다”며 “모든 게임에는 그에 걸맞는 서버 구조가 있는 만큼 테라에게는 지금 서버 구조가 가장 적합하다고 생각한다”고 말하며 강연을 마무리했다.