Amazon GameLift Streams는 게임 빌드를 S3에 올리면 다운로드·설치 없이 브라우저에서 즉시 플레이할 수 있는 관리형 게임 스트리밍 서비스다. WebRTC 기반 저지연 스트림, 3계층 리소스 모델, 멀티 테넌시 등급 선택으로 구성된 아키텍처를 상세히 설명한다.
핵심 포인트- WebRTC로 게임 렌더링 화면을 스트리밍하고 키보드·마우스·게임패드 입력을 DataChannel로 서버에 전달한다.
- 애플리케이션(빌드 정의)→스트림 그룹(컴퓨팅 풀)→스트림 세션(실행 인스턴스) 3계층 리소스 모델로 관리한다.
- Windows·Proton·Linux 세 가지 런타임 환경 중 DirectX·안티치트 요건 여부로 최적 런타임을 선택한다.
- Small(12:1 공유)~Ultra(전용) 4단계 멀티 테넌시 등급으로 AAA~캐주얼까지 비용을 최적화한다.
- Always-On·Target Idle·Maximum 세 단계 용량 설정으로 트래픽 급증과 비용 효율을 동시에 관리한다.
상세 정리- 동작 원리: 서버에서 렌더링된 게임 화면이 WebRTC 비디오 스트림으로 클라이언트에 전달되고, 사용자 입력은 DataChannel로 서버에 역전송된다.
- 애플리케이션: S3 경로, 실행 OS, 실행 파일 경로를 정의하는 최소 단위다.
- 스트림 그룹: 여러 애플리케이션을 연결하고(N:1) 용량을 관리하는 컴퓨팅 풀이다. 하나의 그룹에 최대 250개 앱 연결로 유휴 용량을 공유할 수 있다.
- 런타임 선택: Linux 빌드→Linux 런타임. Windows 빌드에서 DirectX 12·안티치트 필요 시 Windows 런타임, 아니면 Proton 호환성 테스트 후 선택한다. 동일 사양에서 Windows 런타임이 Linux·Proton 대비 약 41% 더 비싸다.
- 테넌시 등급: Small(12:1), Medium(4:1), High(2:1) 공유, Pro·Ultra 전용. AAA 고품질은 전용, 캐주얼 게임은 12:1로 운영해 비용을 줄인다.
- 용량 관리: Always-On은 상시 과금 기본 용량, Target Idle은 예비 버퍼, Maximum은 상한선(할당 시만 과금). 유휴 용량이 있으면 수초 내 즉시, 없으면 온디맨드 할당으로 60초~5분 대기한다.
- 모니터링: CloudWatch에서 AllocatedCapacity, RoundTripTime, FrameCaptureRate 등 실시간 지표와 SessionLength·ErroredStreamSessions 등 세션 종료 지표를 제공한다.
- 구축 속도: S3 업로드, 그룹 설정, 세션 시작 3단계로 10분 내 스트리밍 가능하다. 코드 수정 없이 기존 게임 빌드를 그대로 사용한다.
- 한계: Linux 런타임에서 마이크·게임패드 미지원, 안티치트는 Windows 런타임만 지원, 모바일 네이티브 앱 호스팅 불가.
왜 읽나클라우드 게임 스트리밍 플랫폼을 도입하려는 게임사·인프라 팀이 런타임 선택부터 비용 최적화까지 전체 아키텍처를 파악하기에 적합하다.