Amazon GameLift Service API 참조(AWS SDK) - 아마존 GameLift

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon GameLift Service API 참조(AWS SDK)

이 주제에서는 사용자 지정 게임 서버 및 Realtime 서버 호스팅을 포함하여 Amazon GameLift 관리형 호스팅 솔루션과 함께 사용할 수 있는 작업 기반 API 작업 목록을 제공합니다. 이러한 작업은 aws.gamelift 네임스페이스의 AWS SDK에 패키징됩니다. AWS SDK를 다운로드하거나 Amazon GameLift API 참조 문서를 확인하세요.

API에는 관리형 게임 호스팅을 위한 두 가지 작업 세트가 포함되어 있습니다.

Amazon GameLift 서비스 API에는 다른 Amazon GameLift 도구 및 솔루션과 함께 사용할 수 있는 작업도 포함되어 있습니다. FleetIQ API 목록에 대해서는 FleetIQ API 작업을 참조하세요. 매치메이킹을 위한 FlexMatch API 목록에 대해서는 FlexMatch API 작업을 참조하세요.

Amazon GameLift 호스팅 리소스 설정 및 관리

이러한 작업을 호출하여 게임 서버의 호스팅 리소스 구성, 플레이어 수요에 맞게 용량 조정, 성능 및 사용률 지표에 액세스 등을 수행할 수 있습니다. 이러한 API 작업은 Realtime 서버를 포함하여 Amazon GameLift에서 호스팅되는 게임 서버에서 사용됩니다. 대부분의 리소스 관리 작업에 Amazon GameLift 콘솔을 사용하거나 AWS Command Line Interface(AWS CLI) 도구 또는 AWS SDK를 사용하여 서비스를 호출할 수 있습니다.

배포를 위한 게임 서버 준비

호스팅 리소스에서 배포 및 출시를 준비하기 위해 게임의 게임 서버 코드를 업로드하고 구성합니다.

사용자 지정 게임 서버 빌드 관리

  • upload-build - 로컬 경로에서 빌드 파일을 업로드하고 새 Amazon GameLift 빌드 리소스를 생성합니다. AWS CLI 명령으로만 사용할 수 있는 이 작업은 게임 서버 빌드를 업로드하는 가장 일반적인 방법입니다.

  • CreateBuild - Amazon S3 버킷에 저장된 파일을 사용하여 새 빌드를 생성합니다.

  • ListBuilds - Amazon GameLift 리전에 업로드된 모든 빌드의 목록을 가져옵니다.

  • DescribeBuild - 빌드와 관련된 정보를 검색합니다.

  • UpdateBuild - 빌드 이름 및 버전을 포함하여 빌드 메타데이터를 변경합니다.

  • DeleteBuild - Amazon GameLift에서 빌드를 제거합니다.

Realtime 서버 구성 스크립트 관리

  • CreateScript - JavaScript 파일을 업로드하고 새 Amazon GameLift 스크립트 리소스를 생성합니다.

  • ListScripts - Amazon GameLift 리전에 업로드된 모든 Realtime 스크립트의 목록을 가져옵니다.

  • DescribeScript - Realtime 스크립트와 관련된 정보를 검색합니다.

  • UpdateScript - 스크립트 메타데이터를 변경하고 수정된 스크립트 콘텐츠를 업로드합니다.

  • DeleteScript - Amazon GameLift에서 Realtime 스크립트를 제거합니다.

호스팅용 컴퓨팅 리소스 설정

호스팅 리소스를 구성하고 게임 서버 빌드 또는 Realtime 구성 스크립트를 배포합니다.

플릿 생성 및 관리

  • CreateFleet - 게임 서버를 실행할 새로운 Amazon GameLift 컴퓨팅 리소스 플릿을 구성하고 배포합니다. 일단 배포되면 게임 서버가 구성된 대로 자동으로 시작되고 게임 세션을 호스팅할 준비가 됩니다.

  • ListFleets - Amazon GameLift 리전에 있는 모든 플릿의 목록을 가져옵니다.

  • DeleteFleet - 더 이상 게임 서버나 호스팅 플레이어를 실행하지 않는 플릿을 종료합니다.

  • 플릿 위치 보기/업데이트.

  • 플릿 구성 보기/업데이트.

플릿 용량 관리

  • DescribeEC2InstanceLimits - 현재 AWS 계정과 현재 사용 수준에 허용되는 최대 인스턴스 수를 검색합니다.

  • DescribeFleetCapacity - 플릿의 홈 리전에 대한 현재 용량 설정을 검색합니다.

  • DescribeFleetLocationCapacity - 다중 위치 플릿의 각 위치에 대한 현재 용량 설정을 검색합니다.

  • UpdateFleetCapacity - 수동으로 플릿 용량 설정을 조정합니다.

  • Auto Scaling 설정:

    • PutScalingPolicy - 대상 기반 자동 크기 조정을 설정하거나, 사용자 지정 자동 크기 조정 정책을 생성하거나, 기존 정책을 업데이트합니다.

    • DescribeScalingPolicies - 기존의 자동 크기 조정 정책을 검색합니다.

    • DeleteScalingPolicy - 자동 크기 조정 정책을 삭제하고 이 정책이 플릿 용량에 영향을 미치는 것을 중지시킵니다.

    • StartFleetActions - 플릿의 자동 크기 조정 정책을 다시 시작합니다.

    • StopFleetActions - 플릿의 자동 크기 조정 정책을 일시 중단합니다.

플릿 활동 모니터링.

  • DescribeFleetUtilization - 현재 플릿에서 활성 상태인 서버 프로세스, 게임 세션 및 플레이어의 수에 대한 통계를 검색합니다.

  • DescribeFleetLocationUtilization - 다중 위치 플릿의 각 위치에 대한 사용률 통계를 검색합니다.

  • DescribeFleetEvents - 지정된 시간 범위 동안 플릿에 대해 기록된 이벤트를 봅니다.

  • DescribeGameSessions - 게임의 실행 시간 및 현재 플레이어 수를 포함하여 게임 세션 메타데이터를 검색합니다.

최적의 게임 세션 배치를 위한 대기열 설정

비용, 지연 시간 및 복원력을 고려하여 사용 가능한 최상의 호스팅 리소스와 함께 게임 세션을 배치하기 위해 다중 플릿, 다중 리전 대기열을 설정합니다.

별칭 관리

별칭을 사용하여 플릿을 나타내거나 터미널 대체 대상을 만듭니다. 별칭은 예를 들어 게임 서버 빌드 업데이트 중에 한 플릿에서 다른 플릿으로 게임 활동을 전환할 때 유용합니다.

  • CreateAlias - 새 별칭을 정의하고 선택적으로 플릿에 할당합니다.

  • ListAliases - Amazon GameLift 리전에 정의된 모든 플릿 별칭을 가져옵니다.

  • DescribeAlias - 기존 별칭에 대한 정보를 검색합니다.

  • UpdateAlias - 한 플릿에서 다른 플릿으로 리디렉션하는 등 별칭 설정을 변경합니다.

  • DeleteAlias - 리전에서 별칭을 제거합니다.

  • ResolveAlias - 지정된 별칭이 가리키는 플릿 ID를 가져옵니다.

호스팅 인스턴스 액세스

플릿의 개별 인스턴스에 대한 정보를 보거나 문제 해결을 위해 지정된 플릿 인스턴스에 대한 원격 액세스를 요청합니다.

  • DescribeInstances - 인스턴스 ID, IP 주소, 위치, 상태를 포함하여, 플릿의 각 인스턴스에 대한 정보를 가져옵니다.

  • GetInstanceAccess - 플릿의 지정된 인스턴스에 원격으로 연결하는 데 필요한 액세스 자격 증명을 요청합니다.

VPC 피어링 설정

Amazon GameLift 호스팅 리소스와 기타 AWS 리소스 간의 VPC 피어링 연결을 생성하고 관리합니다.

게임 세션 시작 및 플레이어 참여

게임 클라이언트 서비스에서 이러한 작업을 호출하여 새 게임 세션을 시작하고, 기존 게임 세션에 대한 정보를 얻으며, 플레이어를 게임 세션에 참여시킵니다. 이러한 작업은 Amazon GameLift에서 호스팅되는 사용자 지정 게임 서버 사용을 위한 것입니다. Realtime 서버를 사용하는 경우 실시간 서버 클라이언트 API (C#) 참조를 사용하여 게임 세션을 관리합니다.

  • 하나 이상의 플레이어를 위한 새로운 게임 세션 시작.

    • StartGameSessionPlacement - Amazon GameLift에 문의하여 사용 가능한 최상의 호스팅 리소스를 찾고 새 게임 세션을 시작합니다. 새 게임 세션을 생성할 때는 이 방법을 사용하는 것이 좋습니다. 게임 세션 대기열을 사용하여 다중 리전의 호스팅 가용성을 추적하고 FleetIQ 알고리즘을 사용하여 플레이어 지연 시간, 호스팅 비용, 위치 등을 기반으로 배치 우선 순위를 지정합니다.

    • DescribeGameSessionPlacement - 배치 요청에 대한 세부 정보 및 상태를 가져옵니다.

    • StopGameSessionPlacement - 배치 요청을 취소합니다.

    • CreateGameSession - 특정 플릿 위치에서 비어 있는 새 게임 세션을 시작합니다. 이 작업을 통해 FleetIQ를 사용하여 배치 옵션을 평가하는 대신 게임 세션을 시작할 위치를 더 잘 제어할 수 있습니다. 별도의 단계를 거쳐 새 게임 세션에 플레이어를 추가해야 합니다.

  • 플레이어를 기존 게임 세션에 배치. 사용 가능한 플레이어 슬롯이 있는 실행하는 게임 세션을 찾아서 새 플레이어를 위해 예약합니다.

    • CreatePlayerSession - 열린 슬롯 한 개를 게임 세션에 참여할 플레이어 한 명을 위해 예약합니다.

    • CreatePlayerSessions - 열린 슬롯 여러 개를 게임 세션에 참여할 플레이어 여러 명을 위해 예약합니다.

  • 게임 세션 및 플레이어 세션 데이터로 작업. 게임 세션 및 플레이어 세션에 대한 정보를 관리합니다.

    • SearchGameSessions - 일련의 검색 기준에 따라 활성 게임 세션 목록을 요청합니다.

    • DescribeGameSessions - 활성 상태인 시간 길이 및 현재 플레이어 수를 포함하여 특정 게임 세션에 대한 메타데이터를 검색합니다.

    • DescribeGameSessionDetails - 하나 이상의 게임 세션에 대한 게임 세션 보호 설정을 포함한 메타데이터를 검색합니다.

    • DescribePlayerSessions - 상태, 재생 시간 및 플레이어 데이터를 포함하여 플레이어 활동에 대한 세부 정보를 가져옵니다.

    • UpdateGameSession - 최대 플레이어 수 및 참여 정책과 같은 게임 세션 설정을 변경합니다.

    • GetGameSessionLogUrl - 게임 세션에 대해 저장된 로그의 위치를 가져옵니다.