▲ 강연을 진행한 레진코믹스의 강소리 개발자

게임개발자의 축제인 NDC(Nexon Developer Conference)의 1일 차. 쉽게 서버를 구축하고 운영할 수 있는 구글 앱 엔진을 소개하는 강연이 진행되었다. 하지만 예상과 달리 강연자는 게임 개발자가 아니었다. 구글 앱 엔진의 편리함과 경험담을 이야기하기 위해 등장한 이는 웹툰 서비스 '레진 코믹스' 의 강소리(@curioe) 씨였다.

가녀린 몸매에 앳된 얼굴의 강소리 씨는 놀랍게도 개발자다. 그것도 천 명이 넘는 IT계열 대기업에 근무한 이력을 가지고 있다. 그런 그녀가 이직을 결심하고 스타트업인 레진코믹스로 둥지를 옮기는 큰 결정을 했지만, 강소리 씨를 반겨 주는 건 '지금부터 40일만에 런칭!' 이라는 초특급 과제였다.

레진코믹스 소개를 먼저 하자면, 대부분의 웹툰이 무료로 제공되는 상황에서 부분유료화 시스템을 과감히 도입하고 '프리미엄 웹툰' 이란 슬로건을 건 웹툰 서비스다. 기본적으로는 일정에 맞춰 미리 업로드된 웹툰이 공개되는 구조이지만, 더 좋은 화질로 더 빨리 보고 싶은 유저들은 요금을 지불하고 미리 볼 수 있는 과금체계가 잡혀 있다.

레진코믹스를 포함해 모든 웹툰 서비스가 그렇듯이, 가장 트래픽이 많이 몰릴 때는 저녁 시간이다. 특히 19세 이상의 유료 웹툰이 많은 레진 코믹스의 특성 상 주요 고객층이 직장에 다니고 있는 성인층이다 보니, 아무래도 퇴근 후 늦은 저녁 시간 대에 많은 유저가 몰린다. 이와 같이 특정 시간 대에 트래픽이 몰린다는 것은 낮에는 불필요한 서버가 운영되고, 밤에는 소위 '터질' 우려가 있다는 말이 된다.


▲ 레진코믹스의 부분유료화 시스템은 게임과 비슷한 점이 많다

▲ 저녁이라는 특정 시간대에 몰리는 트래픽. 웹툰 서비스의 특징이기도 하다

40일이라는 짧은 개발 기간. 웹툰 서비스의 특성. 이 모든 것을 강소리 씨가 감당하기는 무리였다. 특히 스타트업이다 보니 대기업과 달리 개발부터 인프라, 데이터베이스 구축 등도 본인이 혼자 해야 됐다. 그렇기에 가장 부담이 적은 엔진을 선택하게 되었고, 꼼꼼히 따져본 결과 '구글 앱 엔진'이 가장 적합하다는 결론을 짓게 되었다.

구글 앱 엔진의 가장 큰 강점은 개발자에게 어플리케이션 개발만 집중할 수 있는 환경을 조성한다는 것이다. 강소리 개발자는 구글 앱 엔진은 'Auto Scaling' 기능을 제공해 자동으로 트래픽 상황을 체크하고 서버를 유동적으로 관리해 서버의 낭비나 부족 현상을 해결해주고, 다양한 기능을 굉장히 저렴한 가격에 패키지로 제공해 준다고 설명했다.

▲ 서버 관리 신경쓸 필요 없음! 개발에만 집중할 수 있는 환경

▲ 이 많은 서비스를 패키지로 제공한다


여기에 유료 회원에게 컷당 2MB의 고용량 고화질 웹툰을 제공하는 레진 코믹스의 특성상, 이미지 저장 비용도 저렴하고 이미지 화질 변환 API가 무료로 포함된 구글 앱 엔진은 정말 매력적인 선택이었다는 칭찬도 이어졌다.

앵그리버드 시리즈의 개발사 로비오(Rovio)와 사진 기반 SNS 스탭챗(SnapChat), 수 많은 영상이 올라오는 교육프로그램 칸 아카데미가 서비스를 빠르게 런칭할 수 있던 이유도 구글 앱 엔진을 선택했기 때문. 개발자가 애플리케이션 개발에만 집중할 수 있는 환경을 제공받았기 때문이라는 사례 설명도 이뤄졌다.


▲ 유명 서비스들이 많이 사용하고 칭찬하는 구글 앱 엔진

이어 강소리 개발자는 구글 앱 엔진으로 애플리케이션 개발하기가 얼마나 편한지 직접 보여주었다. 설명을 위해 그녀는 웹(웹 서버) 연동 모바일(API 서버) 게임을 개발하되 유저 활동을 체크할 수 있는 관리자 툴(관리자 서버)까지 필요하다는 상황을 가정했다. 세 종류의 서버가 필요하고, 이 서버들이 하나의 데이터 스토리지를 공유하는 상황이다.

구글 앱 엔진의 경우 관리자 툴에서 애플리케이션 생성 시 블로그 생성하듯 자동으로 URL이 제공된다. 애플리케이션의 URL 뿐만 아니라 하위계층인 모듈(Module), 버전(Version), 인스턴스(Instance)와 같은 하이라키(Hierarchy)도 직접 요청할 수 있는 URL을 각각 제공해 준다. 이를 통해 쉽고 빠르게 서버를 구성하고 조정할 수 있다. 각 서버 별로 트래픽 비율을 지정해 사용자 활동 등도 손쉽게 체크할 수도 있다.

서버 관리도 간편하다. 각각의 하이라키 중 어떤 것을 메인으로 할 것인지 Default 요청 버튼만 눌러주면 서버가 자동으로 옮겨진다. 버전 1에 버그가 있다면 버전 2를 생성해 메인으로 삼으면 버전 1에 있던 서버가 바로 버전 2에 붙으며, 버전 2에 심각한 오류가 있어 롤백을 해야하는 경우라도 바로 버전 1에 Default만 지정해주면 버전 2의 서버들이 바로 옮겨지는 것이다.

이렇게 해서 아주 간단하게 web, API, Admin 모듈과 각각의 버전, 인스턴스 서버로 구성된 모바일 웹 연동 게임이 만들어졌다. 예상치도 못한 엄청난 인기로 인해 트래픽이 폭발하더라도 문제 없다. 구글 앱 엔진이 자동으로 트래픽상황을 체크해 서버를 운영해주니까.











하지만 구글 앱 엔진을 무작정 사용하면 안된다. 강소리 개발자는 구글 앱 엔진의 경우 데이터 목록 설계에 따라 비용이 천차만별로 달라지니 사전지식이 없는 상태에서 사용하다보면 후에 감당할 수 없는 비용으로 늘어난다고 충고했다. 또한 구글 앱 엔진의 경우 데이터스토어의 Entity, Ancestor처럼 잘 쓰이지 않는 개념을 사용하기 때문에 서비스 이용 시 이와 같은 개념을 확실히 익히고 써야 된다고 당부했다.

한국에서 이용하는 구글의 데이터센터가 물리적 거리 상 멀어 데이터베이스 송수신이 늦다는 단점도 있다. 허나 강 개발자의 말에 따르면 대만과 싱가폴에 또 다른 데이터센터가 가동되며 한국과의 물리적 거리가 대폭 줄었고, 구글의 IaaS인 Google Compute Engine(GCE) 는 그 데이터센터에서 가동 중이다.

사소하지만 그래도 불편했던 점이라면 로그를 웹에서 검색할 수 밖에 없는 번거로움, File API의 미지원, 아이핀 인증의 보안모듈 미지원 등. 이에 대한 필요성을 파악했는지 구글에서는 최근에 Mananged VM이라는 서비스를 소개했다. 구글 앱 엔진의 자동관리에 GCE의 자유성과 컨트롤 기능을 합친 서비스를 제공할 것이라고 설명했다.

끝으로 강소리 개발자는 구글 앱 엔진 이용 수기나 정보를 찾아볼 수 있는 여러 링크를 소개하며, 500달러에 3개월 간 구글 앱 엔진을 체험해볼 수 있는 스타터 팩 코드와 URL 주소를 알려주며 구글 앱 엔진에 대한 강연을 끝맺었다.