다소 생소한 용어인 GBAAS ( Gaming Backend as a Service 의 약자 ) 즉, 게이밍용 BAAS (백앤드 서비스) 라고 볼 수 있다.
업계에서 클라우드 서비스를 하시는 분들과 이야기를 나누면서 일상적으로 사용하는 용어여서 많이 쓰이는..용어 이겠거니 했는데, 이게 검색해보니 잘 안쓰는 용어이네? 그래서 이게 적절한 용어인지 아닌진 모르겠지만 한번 정리 겸 글을 써본다.
Gaming BAAS 서비스
구글에서 검색되는 용어를 기준으로 이야기를 해보면 GBAAS 는 해외에서 널리 쓰이는 용어는 아니고 Game BAAS 가 보편적으로 사용되는 용어인것 같다. 즉, 게임용 BAAS 서비스 즉 게임에서 활용할 수 있는 백엔드 서비스라고 봐야 할 것같다.
GBAAS 는 그냥 쓰는 사람들만 쓰는 약어 혹은 콩글리시 같은 느낌이 아닐까.. 생각이 든다. 검색해보니 서구권 개발 생태계에서는 거의 잘 안쓰이는 용어.
그럼 게임용 BAAS 는 무엇일까?
말 그대로 게임운영을 위해서 주요 서버기능을 제공해주는 백앤드 서비스라고 볼 수 있다.
우리가 모바일 게임 서비스와 같은 서비스를 운영하다보면 회원가입 / 로그인 / 랭킹 / 쿠폰 / 길드 / 게임내 재화 / 서버 코드 수행 / 영수증 검증등등 다양한 기능들을 클라이언트 단이 아닌 서버를 기준으로 필요로 하게되는데, 이를 물론 직접 웹서버를 구축해서 기능을 구현할 수 도 있지만 ( 필자도 2012~2013년에 클라우드 서버에 PHP 서버와 MySQL , MariaDB 등을 이용해서 직접 운영 서버를 구축해서 운영했었음 ) 일정 수준 이상의 네트워킹 및 서버에 대한 이해도를 필요로 하고, 보안 문제나 하드웨어적 이슈 등등 다양한 접근 난이도가 존재하기 때문에 쉽지 않다.
필자의 GBAAS 관련 경험이야기
필자도 10대때부터 나름 웹 서버 등을 만지고 웹 디자인 및 웹사이트 구축 등의 일을 하고 20대 초에 간단한 로컬 네트워크 환경에서 게임 서버 운영 등을 해본 경험을 바탕으로 짧게나마 서버 및 API 시스템을 만들고 운영한적이 있으나, 네트워크 및 서버 관련 이슈는 많은 지식과 경험을 필요로 하는 분야이기 때문에 2014년도부터는 대표적인 서버리스 서비스인 Firebase 를 활용하여 게임 운영을 해오고 있다.
파이어베이스는 2014년~2015년 쯤에 구글에 인수되어 나와 같은 일반 개발자들도 손 쉽게 사용할 수 있게된 웹 기반 BAAS 서비스라고 볼 수 있는데 2014년경 자체 서버 관리에서 탈피해서 좀 더 경량화 되면서도 동시에 안정성 및 지속성을 획득할 수 있는 서버 구축을 위해서 Azure Cloud Function 및 AWS의 서비스들, 그리고 지금은 없어진 것 으로 알 고 있는 페이스북의 Parse 등 다양한 서비스들을 사용해보다가 때마침 구글이 파이어베이스를 인수하고 Realtime DB 라는 걸출한 Json 기반의 NoSql 저장소를 유니티 에서 손쉽게 사용할 수 있게 해줌으로써 그때부터 지금까지 대부분의 게임 관리 기능을 파이어 베이스 기반으로 구축해서 운영해오고 있다.
정확하게 파이어베이스를 제대로 쓰기 시작한 계기는 “순순촛불” 앱을 만들면서 인데, 당시에 갑자기 꺼지지 않는 촛불 앱을 만들고자 했고, 다른 사용자들의 패턴 및 메시지를 수집 및 공유하고 싶어서 해당 기능을 어떻게 빠르고 안정적으로 구현을 할까.. 하다가 공부를 하고 있던 파이어 베이스로 구글 애널리틱스를 연결하고 메시지를 수집할 수 있도록 구현을 해서 몇 시간도 안되서 뚝딱 만들었던 기억이 있다.
( 물론, 개인의 메시지와 같은 정보를 수집하는 행위는 고지의 의무가 필요하다고 판단 되었으므로, 해당 기능은 출시당일 바로 정지했다. )
당시에 안타까운 국내 사정으로 순순 촛불이 엄청나게 많은 사용자들이 한꺼번에 사용하게 되면서 내가 사용하고 있던 종량제 요금에 요금폭탄이 투하되면서 하루만에 십만원이 넘는 금액을 지출해야해서, 하루만에 기능을 튜닝해서 무료로 사용 가능한 정보와 최소한의 기능만을 붙여놓게되었지만, 단기간에 많은 유저가 몰리면서 동시에 파이어 베이스를 활용하는 법에 눈을 뜨게 됐던 계기로 기억한다.
물론 그 이후로 파이어베이스의 매력에 눈을 뜨고, 당시 운영하고 있던 레벨제로 커뮤니티 등 게임 개발자 생태계에 발표를 하는 등 열심히 퍼뜨리려고 노력했으며, 당시에 함께 개발을 해주던 토튜(@totuworld) 의 도움으로 다양한 API 기능등을 구현하고 서비스하면서 알게 모르게 국내에 파이어 베이스 사용자 및 파이어 베이스 기반의 BAAS 기능을 구축하는 개발자 및 회사들에게 영향을 끼친 것으로 알고 있다.
특히 당시에 파이어베이스 기반의 게임 BAAS 서비스를 오픈 소스형태로 배포하고 다른 개발자분들도 토튜와 내가 만들어놓은 재미난 기능들 ( 쿠폰, 랭킹, 영수증 검증 등등 ) 을 써볼 수 있도록 준비를 하다가 당시에 토튜와 나의 개인적인 신상의 이슈로 제대로 런칭을 못했던 것으로 기억한다.
2016년 레벨제로 세미나에서 발표했던 “마그마킥” 후기
https://blog.naver.com/progagmer/220761759343
다만, 이후에 우리가 생각했던 파이어베이스 기반의 게임용 BAAS 서비스가 런칭된 것을 보고, 기능도 대부분 우리가 발표했던 내용과 유사하고, 해당 관계자분이 렙제에도 활동한 것으로 보여서 모 알게 모르게 모 회사의 서비스의 초창기에 영향을 끼쳤을것으로 혼자 자기만족을 하는 중.
어쨌든 서론이 매우 길었는데, 요약하자면 Game BAAS 즉, GBAAS 는 게임 서비스를 하기 위해서 필요한 주요 기능들을 서버리스 API 형태로 제공하는 서비스이고, 그 개념을 처음부터 직접 만들어보고 운용을 해보고 지금도 잘 활용하고 있는 입장에서는 아주 유용한 개념이라고 생각한다.
내가 토튜를 붙잡고 개념을 처음 만들고 직접 만들어서 서비스를 할 때 만해도, 이에 대한 필요성이 느껴져도 운용에 대한 비용이 부담스럽고, 특히 게임 개발 및 운용을 위해서 서버 관련 운영비에 정기적으로 돈을 낸다는 개념이 좀 희박할 시대라.. 종량제 혹은 월별 사용 비용이라는 것이 좀 부답스럽던 시기였지만, 세월이 흘러서 대분의 개발사 및 서비스업체들이 회사 규모를 떠나서 개인 개발자들까지 손쉽게 서비스 및 어셋, 광고툴에 돈을 월별 혹은 종량제로 지불하고 있는 시대라서 더욱더 일정 금액을 내고 훨씬더 편하고 강력하고 안전하게 서버기능을 제공할 수 있는 게임용 BAAS 는 고려대상을 뛰어넘어서 필수 요소중에 하나로 자리잡고 있다고 본다.
특히나 최근에는 코로나19로 인해서 전세계가 교류의 단절을 겪고 이에 대한 화학작용으로 “메타버스” 라는 물리환경을 초월한 가상세계에서의 컨텐츠 활용 및 소셜 네트워킹이 큰 관심을 갖으며 지금은 그 효용성 문제 때문에 잠깐 주춤한 것 같지만 동시에 인프라 투자가 지속되고 쓸만한 개발팀 및 컨텐츠들이 하나둘 씩 나오면서 그 어느때보다 멀티플랫폼 ( 모바일, PC, 태블릿, 웹브라우저 등등 ) 에서 즐기는 네트워크 기반의 컨텐츠 및 게임이 등장하는 시기인것 같다.
따라서 그 어느 때보다도 컨텐츠 제작에만 집중할 수 있는 Creator 들을 위한 각종 서비스들이 등장하고 있는 시기이고, 개인적인 식견으로는 창작자들을 위한 툴을 제공하는 웹 기반의 SAAS ( Software as a Service ) 들이 정말 많이 쏟아져 나올것으로 본다.
그러다 보니 과거에 개념이 등장했지만 큰 확장을 하지 못했던 게임용 BAAS 서비스들도 작년부터 하나둘씩 새롭게 꽃 단장을 하면서 완성도를 끌어올리고 짜잔~ 하고 출사표를 던지고 있는 것 같은데, 개인적으로 살펴보니 과거에는 완성도나, 튜토리얼 문서, 사용자 커뮤니티 등등 활용을 위해서 필수적으로 필요한 요소들이 많이 부족했던 서비스들도 꽤나 쓸만해져 보인다.
그래서 이번 포스팅에서는 좀 살펴볼만한 몇몇 게임용 BAAS ( 이하 GBAAS) 서비스들을 소개해보면서 글을 마무리해보려 한다.
1.Google Firebase
https://firebase.google.com/
- 위에서 소개했던 구글의 파이어베이스, 이를 게임용 BAAS 라고 소개하긴 좀 어폐가 있겠지만.. 필자는 너무나도 게임용으로 잘 사용했기 때문에 한번 소개해봤다.
- 서버리스 기능을 구현하기 위해서는 한번 쯤 꼭 써보면 좋은 서비스라고 생각한다.
- 아마 전세계에서 가장 사용자도 많고 관련 문서 및 팁도 많고 특히나 구글 애널리틱스와 연동해서 사용자 데이터를 트랙킹 및 분석 할 수 있기때문에 아주 강력한 툴이라고 생각한다.
- 단점은 대부분의 기능을 사용하는 플랫폼에 맞게 직접 구현해서 사용을 해야하고, 등장 당시에는 이것도 매우 편리하고 쉬운 편이었지만, 다양한 서비스들이 등장하면서 상대적으로 어렵게 느껴지는 부분이 있어서, 제대로 사용하려면 Node.js 정도는 다룰 줄 알아야 기능을 제대로 사용할 수 있을 것 같다.
- 하지만 대부분의 기능을 무료로 사용할 수 있다는 것도 아주 큰 장점으로 본다.
2. Microsoft Playfab
https://playfab.com/
- IT 관련 최강의 기업중 하나인 마이크로소프트의 게임용 BAAS 서비스.
- AWS 와 함께 세계를 양분하고 있는 클라우드 서비스인 Azure 를 근간으로 제공되는 것처럼 보이는데, 사실은 MS 가 인수를 통해서 확보한 회사여서 사용하다보면 Azure 와의 연계는 좀 억지성이 보이는 것 같다. ( 기술적으로는 잘 모르겠음, 어디까지나 사용자 측면 )
- 홈페이지를 가보면 마인크래프트 및 수많은 게임들이 Playfab 기반으로 운영이 되고 있다고 하는데.. 그래서 그런지 정말로 진정한 의미의 게임용 BAAS 서비스의 구색을 갖추고 있다고 생각함.
- 소규모 개발팀이나 개발단계의 프로젝트는 무료 티어만으로도 충분히 커버가 가능하기 때문에 국내에선 잘 안알려졌거나 사용자가 적은 서비스로 알고 있는데, 꼭 한번 고려해보면 좋을 것 같다.
- 관련해서 스터디 튜토리얼 문서 및 영상 준비중. (MS MVP 갱신을 위해서!!)
3. Amazon Gamelift
https://aws.amazon.com/ko/gamelift/
- 전 세계 클라우드 서비스의 왕 AWS 기반의 게임용 BAAS 서비스로 보임
- 사실 AWS 는 잘 사용할줄 몰라서 게임용 서비스들이 존재하는 것은 알고 있었는데, 사용해본적도 없고 고려를 안해봐서 모르고 있다가 최근에 관련 세미나? 뉴스? 를 보고 검색해보고 알게됨
- 그래서 잘 아는게 없음. 그래도 가장 많은 사용자를 지니고 있는 클라우드 서비스인 AWS 와 연관되어 보이니.. 아마도 해외에는 사용자가 많지 않을까 생각해봄
- 기회가 있으면 한번 사용해보고 소개해보겠음.
4. 네이버 게임팟
https://www.ncloud.com/product/game/gamepot
- 토종 클라우드 서비스인 네이버의 ncloud 산하의 게임 운영을 위한 BAAS 서비스
- 아무래도 모바일 게임이 부흥했던 국내 게임 개발 시장에 맞춰서 개발 및 서비스 되다보니 상당히 쓸만한 다양한 기능들을 제공하는 것이 장점
- 또한 대부분의 서비스가 국내 리전 ( 클라우드 서비스는 네트워크를 기반하다보니 물리적 서버가 위치하고 있는 리전:지역 이 어디냐에 따라서 응답속도가 크게 차이날 수 있어서 리전이 중요 ) 기반으로 제공 되는 서비스이다 보니 기타 서비스들에 비해서 빠르고 구축이 쉬워보임
- 실제로 게임팟의 경우는 발표 세미나도 가서 듣고 해봤는데, 실제로 ncloud 기반으로 게임을 서비스하고 필요한 기능을 제작했던 회사와 협력해서 주요 기능들을 만들고 지원해주는 경우라서 기술적 대응도 유용하고 쓸만한 기능이 많은 것으로 보임.
- 당시에는 사용을 고려하다가 인디 및 소규모 개발팀, 개인 사용자들을 위한 무료 티어가 없어서 테스트 활용을 고려만하다가 포기했었는데, 지금은 살펴보니 50DAU 만큼 무료 사용이 가능하다고함.
5. 뒤끝
https://www.thebackend.io/
- 국내에서 인디 및 소규모 개발팀이 정말 많이 사용하는 GBAAS 서비스
- 이름부터가 뒤끝. 백앤드 서비스 이름이다.
- 국내에서는 개인 및 인디 개발자들을 위한 무료 지원 및 기술지원을 많이 해주고 각종 커뮤니티에서 홍보를 많이하면서 사용자들이 급속도로 는 것으로 알고 있다.
- 아무래도 게임개발자들을 위한 커뮤니티를 운영하다보니 초창기부터 해당 서비스를 사용하시는 개발자분들이 주변에 많았고, 초창기에는 아무래도 해당 서비스도 스타트업에 가깝다보니 장애도 많고 문제도 많아서 불편함을 호소하거나 이탈하는 개발자들이 많았던 것으로 기억
- 지금은 사용자도 많아지고, 내부 문서 및 개발 프로세스도 많이 개선하고 서비스 자체가 일취월장한게 아닌가 생각이 든다. ( 홈페이지 및 개발 문서가 싹다 바뀐것으로 보임 )
- 또한 최근에는 큰 규모의 투자도 받았다고 하니 좀 더 많은 변화 및 지원이 있지 않을까..
- 개인적으로는 써보진 않아서, 쓸만한지 안정성이 괜찮은진 잘 모름.
일단 알고 있거나 생각나는 GBAAS 서비스 위주로 적어봤는데, 요즘은 워낙 많은 게임용 BAAS 서비스들이 국내외로 등장 및 서비스중에 있어서 또 알아보고 관심이 있거나 써보고 싶은 서비스가 있으면 또 다시 소개해보도록 하겠다.
어쩌다보니 개인 잡설 + GBAAS 서비스 소개로 포스팅이 난잡하게 끝난 것 같은데, 향후 기회가 있으면 주요 서비스 소개 부분은 따로 포스팅을 해보면 좋을 것 같다.