

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

# Amazon GameLift Streams를 사용하여 웹 서버 및 클라이언트 설정
<a name="setting-up-web-sdk"></a>

 이 자습서에서는 Amazon GameLift Streams의 스트리밍 서비스를 통합하는 웹 클라이언트 애플리케이션을 설정합니다. 그런 다음 Amazon GameLift Streams 웹 SDK, JavaScript 라이브러리 및 시작할 수 있는 샘플 코드를 사용합니다. 샘플 코드에는 간단한 Amazon GameLift Streams 백엔드 웹 서버와 간단한 웹 클라이언트가 포함되어 있습니다. 이 자습서를 마치면 샘플 코드를 사용하여 스트림을 시작할 수 있습니다.

 Amazon GameLift Streams를 처음 사용하는 경우 [Amazon GameLift Streams에서 첫 번째 스트림 시작](streaming-process.md)자습서부터 시작하는 것이 좋습니다. 자습서에서는 Amazon S3에 게임을 업로드하고 브라우저의 Amazon GameLift Streams 콘솔 내에서 스트리밍을 테스트하는 방법을 안내합니다.

## 사전 조건
<a name="setting-up-web-sdk-prereq"></a>
+ 프로그래밍 방식 액세스를 위한 적절한 자격 증명이 있는 AWS 계정입니다. 자세한 내용은 [Amazon GameLift Streams를 개발자로 설정](setting-up.md) 단원을 참조하십시오.
+ AWS SDK.
+ Amazon GameLift Streams 지원 웹 브라우저 - 섹션을 참조하세요[지원되는 브라우저 및 입력](sdk-browsers-input.md).
+ Node.js - [Node.js 다운로드 페이지를 참조하세요](https://nodejs.org/en/download).

## 웹 SDK 다운로드
<a name="setting-up-web-sdk-materials"></a>

이 자습서에서는 [제품 시작하기 페이지의 리소스 섹션에서](https://aws.amazon.com/gamelift/streams/getting-started/) 다음 자료를 다운로드해야 합니다.
+ **Amazon GameLift Streams 웹 SDK 번들**: 여기에는 간단한 백엔드 서비스 및 웹 클라이언트에 대한 샘플 코드가 포함됩니다.
+ **Amazon GameLift Streams Web SDK API 참조**:이 API 참조는 JavaScript용 Amazon GameLift Streams API 래퍼를 문서화합니다.

## 스트리밍 리소스 설정
<a name="setting-up-web-sdk-resources"></a>

스트림을 시작하려면 애플리케이션과 스트림 그룹인 스트림 리소스가 있어야 합니다. 특히 다음이 있어야 합니다.
+  **준비** 상태인 애플리케이션입니다.
+  사용 가능한 스트림 용량이 있는 **활성** 상태의 스트림 그룹입니다.
+  기본 위치가 아닌 다른 위치에서 스트리밍하려면 애플리케이션이 해당 위치로 복제를 완료했어야 합니다.

 Amazon GameLift Streams 콘솔 또는 Amazon GameLift Streams CLI를 사용하여 애플리케이션과 스트림 그룹을 설정하려면 [Amazon GameLift Streams 스트림 그룹을 사용하여 스트리밍 관리](stream-groups.md)각각 [Amazon GameLift Streams에서 애플리케이션 준비](applications.md) 및 섹션을 참조하세요. 또는 Amazon GameLift Streams 콘솔의 end-to-end 연습은 섹션을 참조하세요[Amazon GameLift Streams에서 첫 번째 스트림 시작](streaming-process.md).

## 백엔드 서버 설정
<a name="setting-up-web-sdk-backend"></a>

 백엔드 서버는 최종 사용자를 대신하여 사용자 인증, 스트림 파라미터 구성, Amazon GameLift Streams 서비스 API 호출 수행과 같은 작업을 처리합니다. 이 설정에 대해 자세히 알아보려면 샘플 코드와 Amazon GameLift Streams Web SDK API 참조를 검토하세요. 특히 Amazon GameLift Streams Web SDK 패키지의 server.js 파일을 참조하세요.

**중요**  
 이 코드는 테스트 및 평가 목적으로만 사용되는 예제 코드이며 프로덕션 용량에 사용해서는 안 됩니다.

**샘플 백엔드 서비스를 실행하려면**

1.  터미널 또는 명령 프롬프트를 열고 폴더로 이동합니다`AmazonGameLiftStreamsWebSDK\GameLiftStreamsSampleGamePublisherService\`.

1.  다음 명령을 실행합니다.

   ```
   npm install
   node server.js
   ```

 샘플 백엔드 서비스를 실행하면 최종 사용자가 웹 클라이언트를 통해 스트림에 연결할 수 있습니다. 다음 단계에서 웹 클라이언트를 테스트합니다.

## 웹 클라이언트 시작
<a name="setting-up-web-sdk-client"></a>

웹 클라이언트 애플리케이션은 Amazon GameLift Streams 스트림을 수신 및 디코딩하고, 최종 사용자에게 스트리밍하고, 최종 사용자가 애플리케이션에 참여할 수 있도록 웹 브라우저 UI를 제공하는 역할을 합니다. JavaScript Amazon GameLift Streams Web SDK를 자체 웹 클라이언트 애플리케이션에 통합하는 방법에 대해 자세히 알아보려면 샘플 코드와 Amazon GameLift Streams Web SDK API 참조를 검토하세요. 특히 Amazon GameLift Streams 웹 SDK 패키지`public/index.html`의 섹션을 참조하세요. 브라우저에서 웹 클라이언트를 시작할 때 웹 페이지 소스를 볼 수도 있습니다.

**참고**  
Amazon GameLift Streams의 Windows 런타임은 IPv4 또는 IPv6를 통한 스트림 세션을 지원합니다. 그러나 Linux 및 Proton 런타임 환경은 IPv4를 통한 스트리밍만 지원합니다.

**웹 클라이언트 애플리케이션을 시작하려면**

1.  웹 브라우저를 열고 로 이동합니다`http://localhost:port/`. 포트 번호는 백엔드 서버에서 설정합니다. 기본적으로 HTTP 포트 8000입니다.

1. 게임을 플레이하거나 소프트웨어를 사용합니다.

   1. 마우스와 같은 입력을 연결하려면 **입력 연결을** 선택합니다.

   1. 게임을 종료하려면 **Esc** 키를 선택합니다.

   1. 서버 프로세스를 중지하려면 **Ctrl\$1C** 키를 선택합니다.

## 스트리밍 리소스 정리
<a name="setting-up-web-sdk-cleanup"></a>

**주의**  
 스트림 그룹에 스트리밍 용량이 할당되면 해당 용량이 사용되지 않더라도 비용이 발생합니다. 불필요한 비용을 방지하려면 스트림 그룹을 필요한 크기로 조정하세요. 개발 중에는 사용하지 않을 때 스트림 그룹의 상시 가동 용량과 대상 유휴 용량을 0으로 조정하는 것이 좋습니다. 자세한 정보는 [스트림 그룹을 0 용량으로 확장](pricing.md#pricing-pause-stream-groups) 섹션을 참조하세요.

자습서를 완료하고 더 이상 애플리케이션을 스트리밍할 필요가 없는 경우 다음 단계에 따라 Amazon GameLift Streams 리소스를 정리합니다.

**스트림 그룹 삭제**

 스트림 그룹을 삭제하면 Amazon GameLift Streams가 모든 스트림 용량을 해제합니다.

**Amazon GameLift Streams 콘솔을 사용하여 스트림 그룹을 삭제하려면**

1.  에 로그인 AWS Management Console 하고 [Amazon GameLift Streams 콘솔](https://console.aws.amazon.com/gameliftstreams/)을 엽니다.

1.  기존 스트림 그룹 목록을 보려면 탐색 창에서 **스트림 그룹을** 선택합니다.

1.  삭제할 스트림 그룹의 이름을 선택합니다.

1.  스트림 그룹 세부 정보 페이지에서 **삭제**를 선택합니다.

1.  **삭제** 대화 상자에서 삭제 작업을 확인합니다.

 Amazon GameLift Streams는 컴퓨팅 리소스를 해제하고 스트림 그룹을 삭제하기 시작합니다. 이 시간 동안 스트림 그룹은 **삭제** 중 상태입니다. Amazon GameLift Streams가 스트림 그룹을 삭제한 후에는 더 이상 검색할 수 없습니다.

**애플리케이션 삭제**

 다음 조건을 충족하는 애플리케이션만 삭제할 수 있습니다.
+  애플리케이션이 **준비 완료** 또는 **오류** 상태입니다.
+  진행 중인 스트림 세션에서는 애플리케이션이 스트리밍되지 않습니다. 클라이언트가 스트림 세션을 종료할 때까지 기다리거나 Amazon GameLift Streams API에서 [TerminateStreamSession](https://docs.aws.amazon.com/gameliftstreams/latest/apireference/API_TerminateStreamSession.html)을 직접적으로 호출하여 스트림을 종료해야 합니다.

 애플리케이션이 스트림 그룹에 연결된 경우 애플리케이션을 삭제하기 전에 모든 관련 스트림 그룹에서 연결을 해제해야 합니다. 콘솔에서 이 프로세스를 안내하는 대화 상자가 나타납니다.

**Amazon GameLift Streams 콘솔을 사용하여 애플리케이션을 삭제하려면**

1. 에 로그인 AWS Management Console 하고 [Amazon GameLift Streams 콘솔](https://console.aws.amazon.com/gameliftstreams/)을 엽니다.

1. 탐색 모음에서 **애플리케이션을** 선택하여 기존 애플리케이션 목록을 봅니다. 삭제할 애플리케이션을 선택합니다.

1. 애플리케이션 세부 정보 페이지에서 **삭제**를 선택합니다.

1. **삭제** 대화 상자에서 삭제 작업을 확인합니다.

 Amazon GameLift Streams가 애플리케이션 삭제를 시작합니다. 이 시간 동안 애플리케이션은 `Deleting` 상태입니다. Amazon GameLift Streams가 애플리케이션을 삭제한 후에는 더 이상 검색할 수 없습니다.