Toggle navigation
Tech Spec
About Gooose
Tech Spec
Gooose와 함께하세요.
당신과 함께 뛰겠습니다.
Build & Deploy
모듈 설정을 마치고 나면, 빌드 버튼으로 프로젝트를 빌드하여 문제점을 체크해 볼 수 있다.
프로젝트의 빌드는 Server Code Generator 를 통해 자동으로 이루어진다.
모듈이 문제없이 빌드되면, 배포(Deploy)로 서버를 실행 시킬 수 있다.
ELD(Event Layered Database)
기존 DB의 안정된 기반위에 게임등의 인터렉션이 필요한 서비스를 지원하기 위해 이벤트 구조가 동작
Event Layer가 필요한 이벤트가 발생시 네트워크를 통해 알려주는 구조로서 유저는 보통 확장모듈을 통해 이벤트를 간접적으로 사용
JavaScript와 Erlang으로 만들어졌으며, 추후 코어는 C++로 변경예정
유저의 리퀘스트를 처리할 때 API Layer에서 게임 로직에 대한 처리를 하게 된다.
API 레이어는 Data Sync부분을 ELD로 넘김으로서 구조의 복잡성을 줄일 수 있다.
Extension Modules
실제 게임의 코드가 담겨있는 모듈로 실행언어는 JavaScript로 구성되어 있음 * 사용언어는 추후 추가예정
확장모듈을 어떻게 조합하느냐에 따라 게임서버의 기능을 추가/삭제 가능
모든 확장 모듈은 자동 생성 타입으로 유저가 직접 내부를 다룰 수는 없음
자동으로 관리되는 모듈이므로 Database 변경 이슈가 생기면 그에 따른 데이터 이전 및 백업은 변경내용을 추적하여 확장모듈에서 책임진다.
Game API Layer
Game API Layer는 서비스를 직접 담당하는 부분으로 실질적인 커넥션을 받도록 되어있다.
API Layer는 서버 세팅에 따라 TCP(UDP) Socket, Web Socket, HTTP(S)등 여러가지의 프로토콜을 이용가능 *프로토콜에 따라 확장모듈 사용에 제한이 있을 수 있다.
확장 모듈이 API 레이어에 설치되어 실질적인 게임내용 서비스를 하게된다.