프로젝트 소개

Croupier는 게임 운영을 위한 범용 GM 백엔드 시스템으로, 단일 게임 회사 내부의 다수 게임 및 다수 환경 시나리오를 지원합니다. 시스템은 Web 콘솔 → Server(제어면, 고가용성 지원) → Agent(게임 VPC에 배포) → 게임 서버/SDK의 3계층 아키텍처를 채택하고 있습니다. Agent와 Server 사이에는 TCP 세션(기본 TLS 활성화)을 사용하고, SDK와 Agent 사이에는 TCP 세션(기본 TLS 비활성화)을 사용합니다. 두 링크는 동일한 세션 전송 기반을 공유하며, 핸드셰이크 메시지와 비즈니스 시맨틱에서만 서브 프로토콜을 구분합니다. 비즈니스 범위는 gameId(게임 식별자)와 env(dev/staging/prod 등 환경 식별자)로 정의되며, 이는 물리적 배포 위치와 분리됩니다. 핵심 기능으로는 통합 함수 등록 스케줄링 모델, 경량 세션 전송(단일 연결 양방향 요청, 재연결, 백프레셔, 스트림 제거), JSON 비즈니스 데이터 + Protobuf 엔벨로프 메시지 형식, JSON Schema 능력 계약 기반의 Ant Design Pro 콘솔 등이 있습니다. SQLite(개발 및 테스트), MySQL(운영 권장), PostgreSQL, SQL Server 데이터베이스를 지원합니다. Go, C#, Java, C++, Python, JS/TS 등 공식 SDK를 제공하며, 문서는 아키텍처 설계, 범위 모델, 전송 프로토콜 및 SDK 사용 가이드를 포함합니다.