GameLift 작동 방식 - 아마존 GameLift

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

GameLift 작동 방식

이 항목에서는 GameLift 호스팅 솔루션에 대한 일반적인 개요를 제공합니다. 개요에서는 게임 호스팅의 핵심 구성 요소를 다루고 플레이어가 멀티플레이어 게임 서버를 사용할 수 있는 방법을 GameLift 설명합니다.

게임을 호스팅하기 위해 준비할 준비가 GameLift 되셨나요? 체크 아웃Amazon 시작하기 GameLift.

핵심 구성 요소

게임을 GameLift 호스팅하도록 설정하려면 다음 구성 요소를 사용해야 합니다. 의 다이어그램은 이러한 구성 요소 간의 관계를매니지드 방식의 게임 아키텍처 GameLift 시각화합니다.

  • 게임 서버는 플릿에서 실행되는 게임의 서버 소프트웨어입니다. 게임 서버 빌드나 스크립트를 GameLift 업로드하고 알려줍니다 GameLift. GameLift Anywhere또는 GameLift FleetIQ를 사용하면 게임 서버 빌드를 하드웨어에 직접 업로드합니다.

  • 게임 세션은 플레이어와 함께 진행 중인 게임입니다. 수명 및 플레이어 수와 같은 게임 세션의 기본 특성을 정의합니다. 그런 다음 플레이어는 게임 서버에 연결하여 게임 세션에 참여합니다.

  • 게임 클라이언트는 플레이어의 디바이스에서 실행되는 게임 소프트웨어입니다. 게임 클라이언트는 수신한 연결 정보를 기반으로 백엔드 서비스를 통해 게임 서버에 연결하여 게임 세션에 GameLift 참여합니다.

  • 백엔드 서비스는 관련 작업을 처리하는 추가 사용자 지정 GameLift 서비스입니다. 가장 좋은 방법은 백엔드 서비스가 모든 게임 클라이언트 통신을 처리하는 것입니다 GameLift.

게임 서버 호스팅

를 사용하면 관리형 GameLift GameLift, GameLift FleetIQ 등의 세 가지 방식으로 게임 서버를 호스팅할 수 GameLift Anywhere 있습니다. 관리형 GameLift 및 GameLift Anywhere 둘 다 GameLift 플릿을 사용하여 게임 서버를 관리합니다. FleetIQ에 대한 자세한 내용은 GameLift FleetIQ란 무엇인가요? GameLift FleetIQ 참조하십시오.

게임의 요구 사항에 맞게 플릿을 설계할 수 있습니다. 플릿 설계에 대한 자세한 내용은 단원을 참조하십시오GameLift 플릿 디자인 가이드.

관리형 GameLift

GameLiftManaged를 사용하면 인스턴스라는 GameLift 가상 컴퓨팅 리소스에서 게임 서버를 호스팅할 수 있습니다. 인스턴스 플릿을 만들고 게임 서버를 실행하도록 배포하여 호스팅 리소스를 설정합니다.

GameLift Anywhere

GameLift Anywhere를 사용하면 관리하는 하드웨어에서 게임 서버를 호스팅할 수 있습니다. 하드웨어를 참조하는Anywhere 플릿을 생성하여 호스팅 리소스를 설정하세요. Anywhere플릿에서 대기열 및 모니터링과 같은 GameLift FlexMatch 도구를 사용할 수 있습니다.

플릿 별칭

앨리어스는 플릿 간에 전송할 수 있는 명칭으로, 일반 플릿 위치를 편리하게 지정할 수 있습니다. 별칭을 사용하면 게임 클라이언트를 변경하지 않고도 게임 클라이언트를 한 플릿에서 다른 플릿으로 전환할 수 있습니다. 서버에 연결하는 대신 컨텐츠를 가리킬 수 있는 터미널 별칭을 만들 수도 있습니다. 별칭을 사용하여 관리 대상Anywhere 플릿과 플릿 간에 전송할 수 있습니다.

게임 세션 실행

게임 서버 코드를 플릿에 배포하고 각 인스턴스에서 게임 서버 프로세스를 GameLift 실행하면 플릿이 게임 세션을 호스팅할 수 있습니다. GameLift 게임 클라이언트 서비스가 백엔드 서비스 또는 에 배치 요청을 보낼 때 새 게임 세션을 시작합니다 GameLift.

게임 세션 배치 및 FleetIQ 알고리즘

게임 세션 배치는 새로운 게임 세션을 호스팅할 사용 가능한 게임 서버를 선택하는 작업을 처리합니다. 게임 세션 배치의 주요 구성 요소는 GameLift 게임 세션 대기열입니다.

게임 세션 대기열에 플릿 목록을 할당하여 대기열이 게임 세션을 배치할 수 있는 위치를 결정합니다. 가장 좋은 방법은 대기열의 플릿을 플릿 유형, 위치 및 인스턴스 유형에 따라 달라야 한다는 것입니다. 이러한 다양성 덕분에 대기열을 더욱 유연하게 배치하여 플레이어에게 가장 적합한 위치에 배치할 수 있습니다. 게임 세션 대기열에 대한 자세한 내용과 이를 게임에 맞게 설계하는 방법에 대한 자세한 내용은 을 참조하십시오게임 세션 대기열 디자인.

대기열은 FleetIQ라는 알고리즘을 사용하여 각 게임 세션 요청에 가장 적합한 배치를 찾습니다. FleetIQ 알고리즘은 짧은 플레이어 지연 시간, 호스팅 비용, 지리적 위치 또는 기타 플릿 특성을 기반으로 사용 가능한 게임 서버 검색의 우선 순위를 지정합니다. FleetIQ에 대한 자세한 내용은 단원을 참조하십시오 GameLift 대기열 작동 방식.

플레이어와 게임 연결

게임 세션 배치 프로세스의 일부로 대기열은 선택한 게임 서버에 새로운 게임 세션을 시작하라는 메시지를 표시합니다. 게임 서버는 프롬프트에 응답하고 플레이어 연결을 수락할 준비가 되면 다시 보고합니다. GameLift GameLift 그런 다음 연결 정보를 백엔드 서비스 또는 게임 클라이언트 서비스에 IP 주소 또는 DNS 이름 및 포트로 전달합니다. 게임 클라이언트는 이 정보를 사용하여 게임 세션에 직접 연결하고 게임플레이를 시작합니다.

플릿 용량 조정

플릿이 활성화되고 게임 세션을 호스팅할 준비가 되면 플레이어 수요에 맞게 플릿 용량을 조정할 수 있습니다. 사용하는 용량에 따라 호스팅 비용이 결정됩니다. 들어오는 모든 플레이어가 게임을 빨리 찾는 것과 가만히 있는 리소스에 과다 지출하는 것 사이에서 균형을 찾는 것이 좋습니다.

플릿에 있는 인스턴스 수를 조정하여 플릿의 규모를 조정합니다. 인스턴스를 확장하면 게임 세션 및 플레이어의 가용성을 높이거나 낮출 수 있습니다. 여러 위치에 인스턴스가 있는 플릿의 경우 전체 플릿 대신 위치별로 용량을 조정할 수 있습니다.

GameLift 매우 효과적인 auto 스케일링 도구를 제공합니다. 플릿 용량을 수동으로 설정하도록 선택할 수도 있습니다. 자세한 정보는 GameLift 호스팅 용량 확장을 참조하세요.

Auto Scaling

auto Scaling을 활성화하면 플릿의 호스팅 지표를 GameLift 추적하고 사용자가 정의한 가이드라인에 따라 인스턴스를 추가 또는 제거할 시기를 결정합니다. GameLift 플레이어 수요의 변화에 따라 용량을 직접 조정할 수 있습니다. auto 조정을 통한 비용 효율성 개선에 대한 자세한 내용은 Amazon GameLift 요금을 참조하십시오.

GameLift 다음과 같은 두 가지 auto 크기 조정 방법을 제공합니다.

추가 조정 기능
  • 게임 세션 보호 — 스케일 다운 이벤트 중에 활성 플레이어를 호스팅하는 게임 세션이 종료되지 GameLift 않도록 합니다.

  • 조정 제한 — 플릿의 인스턴스 수에 최소 및 최대 제한을 설정하여 전체 인스턴스 사용량을 제어합니다.

  • auto Scaling 일시 중지 — auto Scaling 정책을 변경하거나 삭제하지 않고 플릿 위치 수준에서 auto Scaling을 일시 중단합니다.

  • 스케일링 지표 — 플릿의 용량 및 조정 이벤트 기록을 추적합니다.

모니터링 GameLift

플릿을 설치하고 실행하면 배포된 게임 서버의 성능을 모니터링하는 데 도움이 되는 다양한 정보를 GameLift 수집합니다. 이 정보를 사용하여 리소스 사용을 최적화하고, 문제를 해결하고, 플레이어가 게임에서 어떻게 활동하는지에 대한 통찰력을 얻을 수 있습니다. GameLift 다음을 수집합니다.

  • 플릿, 위치, 게임 세션 및 플레이어 세션 세부 정보

  • 사용량 지표

  • 서버 프로세스 상태

  • 게임 세션 로그

에서의 모니터링에 대한 자세한 내용은 GameLift 을 참조하십시오아마존 모니터링 GameLift.

기타AWS 리소스 사용

게임 서버 및 애플리케이션은 다른AWS 리소스와 통신할 수 있습니다. 예를 들어 플레이어 인증 또는 소셜 네트워킹에 일련의 웹 서비스를 사용할 수 있습니다. 게임 서버가AWS 계정 관리하는AWS 리소스에 액세스하려면AWS 리소스 액세스를 명시적으로 GameLift 허용해야 합니다.

GameLift 에서는 이러한 유형의 액세스를 관리하기 위한 몇 가지 옵션을 제공합니다. 자세한 정보는 플릿의 다른AWS 리소스와 소통하세요 단원을 참조하세요.