이 지침은 Amazon GameLift Testing Toolkit을 사용하여 멀티플레이어 게임을 테스트, 시각화 및 최적화하는 데 도움이 됩니다. 이 도구 키트를 사용하면 Amazon GameLift 인프라 문제를 해결하고 디버그하고 튜닝할 수 있습니다. 이 지침에서는 가상 플레이어를 통해 실제 플레이어와 동일한 코드를 실행할 수 있는 선택적 기능을 제공하여 개발자가 게임을 프로덕션에 출시하기 전에 게임의 성공 여부를 테스트할 수 있도록 합니다.

아키텍처 다이어그램

아키텍처 다이어그램(PDF) 다운로드 

Well-Architected 원칙

AWS Well-Architected Framework는 클라우드에서 시스템을 구축하는 동안 사용자가 내리는 의사 결정의 장단점을 이해하는 데 도움이 됩니다. 이 프레임워크의 6가지 원칙을 통해 안정적이고 안전하며 효과적이고 비용 효율적이며 지속 가능한 시스템을 설계 및 운영하기 위한 아키텍처 모범 사례를 배울 수 있습니다. AWS Management Console에서 추가 요금 없이 사용할 수 있는 AWS Well-Architected Tool을 사용하면 각 원칙에 대한 여러 질문에 답하여 이러한 모범 사례와 비교하며 워크로드를 검토할 수 있습니다.

위의 아키텍처 다이어그램은 Well-Architected 모범 사례를 고려하여 생성된 솔루션의 예시입니다. Well-Architected를 완전히 충족하려면 가능한 많은 Well-Architected 모범 사례를 따라야 합니다.

  • 툴킷과 샘플 게임 모두 코드형 인프라를 사용하여 완전히 배포되므로 수동 프로세스로 인한 오류가 줄어들고 변경 사항을 배포하는 데 드는 노력이 줄어듭니다.

    운영 우수성 백서 읽기 
  • API Gateway의 서버리스 웹 콘솔 API는 Amazon Cognito 사용자 풀에 대한 AWS Identity and Access Management(IAM) 기반 인증으로 보호됩니다.  

    API Gateway의 서버리스 샘플 게임 백엔드는 플레이어의 게스트 ID를 안전하게 검증하기 위해 IAM 기반 인증으로 보호됩니다.

    GameLift의 게임 서버는 클라이언트-서버 통신에 사용되는 포트에만 액세스를 허용합니다. 백엔드 Lambda 함수는 필요한 서비스에만 액세스할 수 있습니다.

    보안 백서 읽기 
  • DynamoDB 테이블에 데이터가 저장되며, 온디맨드 용량 할당을 활용하므로 수요 변화에 따라 용량이 자동으로 확장됩니다.  

    솔루션 백엔드 서비스는 Lambda를 사용하여 인스턴스를 자동으로 확장합니다.  

    샘플 게임 백엔드는 GameLift 타겟 기반 자동 크기 조정을 지원하여 수요 변화를 처리합니다.

    신뢰성 백서 읽기 
  • API Gateway, Lambda, DynamoDB, Fargate와 같은 관리형 서버리스 기술을 활용하면 사용한 리소스에 대해서만 비용을 지불하고 솔루션을 유지 관리하는 데 필요한 운영 노력을 줄일 수 있습니다.  

    솔루션은 원하는 리전에 배포할 수 있으며 CloudFront를 활용하여 웹 콘솔 최종 사용자의 지연 시간을 줄여줍니다.

    성능 효율성 백서 읽기 
  • Fargate Spot으로 가상 플레이어 작업을 시작하여 테스트 비용을 줄일 수 있습니다.

    웹 콘솔과 샘플 게임 백엔드는 서버리스 기술을 활용하므로 사용한 리소스에 대해서만 비용을 지불하면 됩니다.  

    웹 콘솔 백엔드는 수요에 따라 리소스를 조정하기 위해 온디맨드 용량 할당을 사용하는 DynamoDB 테이블과 함께 LambdaAPI Gateway의 기본 확장 기능을 활용합니다.

    샘플 게임 백엔드는 GameLift 타겟 기반 자동 크기 조정을 지원하여 필요한 리소스를 최소화합니다.

    비용 최적화 백서 읽기 
  • 이 지침에서는 높은 평균 사용률을 유지하는 책임을 AWS에 맡기는 관리형 서비스를 광범위하게 사용합니다.

    샘플 게임 백엔드는 GameLift 타겟 기반 자동 크기 조정을 지원하여 필요한 리소스를 최소화합니다. 게임 세션을 최소한의 서버 인스턴스 수로 압축하여 리소스 사용률을 지속적으로 높게 유지합니다.

    이 지침은 관리형 서비스를 폭넓게 활용함으로써 환경에 미치는 개인의 영향을 줄여줍니다.  

    또한 스팟 플릿에서 게임 서버를 시작하고 Fargate Spot에서 가상 플레이어 작업을 시작함으로써 사용하지 않는 리소스가 지속 가능성에 미치는 영향을 더욱 줄일 수 있습니다.

    지속 가능성 백서 읽기 

구현 리소스

샘플 코드를 시작점으로 사용할 수 있습니다. 이 샘플 코드는 업계에서 검증되었고 권장되는 것이지만 최종적인 것은 아니며, 시작하는 데 도움을 줄 것입니다.

AWS 아키텍처
블로그

제목

부제
텍스트
 
이 게시물에서 배울 수 있는 내용은...
전체 블로그 게시물 읽기 
AWS 아키텍처
블로그

제목

부제
텍스트
 
이 게시물에서 배울 수 있는 내용은...
전체 블로그 게시물 읽기 

고지 사항

샘플 코드, 소프트웨어 라이브러리, 명령줄 도구, 개념 증명, 템플릿 또는 기타 관련 기술(AWS 직원을 통해 제공되는 상기 항목 포함)은 AWS 이용계약 또는 귀하와 AWS 간의 서면 계약(적용되는 것)에 따라 AWS 콘텐츠로 제공됩니다. 이 AWS 콘텐츠를 프로덕션 계정, 프로덕션 또는 기타 중요한 데이터에 사용해서는 안 됩니다. 귀하는 특정 품질 제어 방식 및 표준에 따라 프로덕션급 사용에 적절하게 샘플 코드와 같은 AWS 콘텐츠를 테스트, 보호 및 최적화할 책임이 있습니다. AWS 콘텐츠를 배포하면 Amazon EC2 인스턴스를 실행하거나 Amazon S3 스토리지를 사용할 때와 같이 요금이 부과되는 AWS 리소스를 생성하거나 사용하는 것에 대한 AWS 요금이 발생할 수 있습니다.