기술 자료

지원

Multiplay Hosting

Multiplay Hosting

할당 페이로드

Learn how allocation payloads pass game-specific data to your servers during allocation.
읽는 시간 1분최근 업데이트: 21일 전

할당 페이로드 기능을 사용하면 서버 할당을 요청할 때 파일을 페이로드로 전송할 수 있으며, 이를 통해 매치별로 게임을 구성할 수 있습니다. 페이로드가 ProcessAllocation V1 엔드포인트를 통해 업로드되면 게임 프로세스에서 페이로드를 가져올 수 있습니다. 할당이 종료되면 해당 할당과 연계된 페이로드를 더 이상 사용할 수 없습니다. 페이로드 라이프사이클을 참조하십시오.

제한 사항

할당 페이로드 기능의 제한 사항은 다음과 같습니다.
  • 페이로드는 30KB를 초과할 수 없습니다. 엔드포인트는 크기 제한보다 큰 페이로드가 포함된 할당을 거부하고 이를 400이라는 상태로 나타냅니다.
  • Multiplay ProcessAllocation V1 엔드포인트에서 할당의 일부로 페이로드를 포함할 수 있습니다.
  • ProcessDeallocation V1 엔드포인트를 사용하여 페이로드를 제거할 수 있습니다.

페이로드 라이프사이클

페이로드는 특정 할당과 연계된 세션 기반의 임시 데이터입니다. 페이로드가 연결된 할당이 해제되면 해당 페이로드는 더 이상 사용할 수 없습니다. 다음 조건 중에서 하나라도 만족하면 페이로드를 가져올 수 없습니다.
  • 게임 서버가 할당 해제 엔드포인트를 통해 할당이 해제됩니다. 할당의 라이프사이클이 완료되면 Multiplay Hosting이 할당 UUID와 관련된 모든 데이터를 삭제합니다.
  • 페이로드가 TTL(Time to Live)에 도달합니다. 플릿 스케일링 설정의 할당 타임아웃 값이 페이로드 TTL을 설정하며, 플릿 레벨에서 이 값을 설정하지 않으면 기본값은 1시간입니다.

페이로드 전송

페이로드 값을 보내려면
payload
문자열 값을 요청 본문에 포함해야 하며, 페이로드는 할당의 전체 라이프사이클 동안 사용 가능합니다.

요청 예시

curl --location --request POST 'https://multiplay.services.api.unity.com/v1/allocations/projects/<projectid>/environments/<environmentid>/fleets/<fleetid>/allocations' \--header 'Authorization: Basic YOUR_AUTH_CREDENTIALS' \--header 'Content-Type: application/json' \--data-raw '{ allocationId: "<allocation_uuid>"", buildConfigurationId: <build_config_id>, regionId: "<region_id>"", payload: "this can be anything"}'

응답 예시

{ "allocationId": "<allocation_uuid>", "href": "string"}

페이로드 가져오기

할당 요청이 완료되면 게임 서버에서 페이로드에 액세스할 수 있습니다. 게임 서버 머신에서 로컬로 사용 가능한 페이로드 프록시로 요청을 전송하여 게임 서버에서 페이로드 파일을 가져옵니다. 페이로드 프록시는 포트
8086
에서 서비스에 액세스할 수 있으며, 게임 서버와 함께 위치합니다. 이 프록시는 할당 엔드포인트를 통해 업로드된 페이로드를 검색합니다.

요청 예시

curl -X GET http://localhost:8086/payload/<allocation_uuid>

응답 예시

HTTP/1.1 200 OKDate: Mon, 26 Jul 2021 17:00:33 GMTContent-Length: 23Content-Type: text/plain; charset=utf-8This can be anything.