기술 자료

지원

Cloud Code

Cloud Code

모듈 비용

Understand the pricing model and free tier for Cloud Code modules.
읽는 시간 1분최근 업데이트: 12시간 전

Cloud Code에는 무료로 개발하고 출시할 수 있는 무료 티어가 있습니다. 조직이 무료 티어 또는 적용되는 크레딧 한도를 초과하는 규모로 스케일링하는 경우에만 비용을 지불하면 됩니다. UGS 제품 가격 책정 개요 페이지에서 자세한 내용과 가격 책정에 관한 FAQ를 확인할 수 있습니다.

Unity 서비스에서 Cloud Code 사용

Unity 서비스에서 Cloud Code를 사용하면 사용하는 서비스의 사용량에 대한 비용이 청구됩니다. 예를 들어 Cloud Code에서 Cloud Save 서비스를 호출하면 Cloud Save 호출과 Cloud Code 호출에 대한 비용이 모두 청구됩니다. 자세한 내용은 Unity 서비스 가격 책정 페이지를 참고하십시오.

푸시 메시지 사용

메시지를 클라이언트에 푸시하기 위해 Cloud Code WebSocket 기능을 사용하는 경우 네트워크 사용량과 관련 비용에 관해 중요한 고려 사항이 있습니다.

송신 비용

모듈에서 클라이언트에 보내는 각 메시지는 네트워크 대역폭을 소비하며 이는 모듈의 송신 데이터 총량에 영향이 미칩니다. Cloud Code는 WebSocket 연결을 통한 메시지 푸시와 관련된 네트워크 사용량을 Cloud Code 송신 비용에 더합니다. 애플리케이션을 설계하고 메시지를 보낼 시기와 빈도를 결정할 때 발생할 비용을 염두에 두는 것이 중요합니다. 과도하거나 불필요하게 큰 메시지로 인해 송신 비용이 증가할 수 있습니다. Cloud Code 가격 책정에 대해 자세히 알아보려면 비용 페이지를 참고하십시오.

메시지 크기 제한

Cloud Code는 WebSocket 연결을 통해 전송되는 메시지의 크기를 10KB로 제한합니다. 따라서 특히 더 복잡하거나 데이터가 많은 애플리케이션의 경우 보내는 데이터의 크기를 관리해야 합니다. 아래 방법을 사용하면 플레이어에게 최신 정보를 제공하며 비용과 네트워크 사용량도 낮게 유지할 수 있습니다.

완화

사용 시점

달성 기준

데이터 비교 분석 전송대규모 데이터나 게임 상태에 대한 상당한 변동 사항을 전달해야 합니다.전체 페이로드가 아닌 데이터 비교 분석을 전송합니다. 비교 분석은 기존 상태에 적용하는 일련의 변경 사항으로, 대부분 전체 상태 데이터보다 크기가 훨씬 작습니다.
데이터에 대한 HTTP 요청 표시전체 데이터 세트가 대규모이고 업데이트가 자주 필요하지 않은 경우나 HTTP를 통해 데이터를 가져오는 것이 비용 효과적인 경우에 적합합니다.WebSocket 메시지를 넛지 메커니즘으로 사용하여 새 데이터가 사용 가능해졌음을 클라이언트에 알리고 전체 데이터 세트를 가져오기 위한 HTTP 요청을 생성하도록 메시지를 표시할 수 있습니다.

Cloud Code 비용

비용은 다음 세 가지 카테고리로 계산됩니다.

카테고리

설명

호출 수호출 수는 조직 내에서 Cloud Code 모듈 함수를 성공적으로 실행한 요청 횟수로 계산됩니다. 성공적인 실행이란 요청의 결과로 모듈에서 HTTP 200 상태 코드가 포함된 응답이 반환되었음을 뜻합니다.
컴퓨팅 시간컴퓨팅 시간은 조직 내에서 Cloud Code 모듈 함수를 실행하는 데 소요되는 시간입니다. 실행에는 추가 준비 시간이 포함될 수도 있습니다.
송신량송신량은 조직 내에서 성공적으로 실행된 Cloud Code 모듈 함수의 응답 크기(GB)로 측정됩니다. 성공적인 실행이란 요청의 결과로 모듈에서 HTTP 200 상태 코드가 포함된 응답이 반환되었음을 뜻합니다.

비용 절감 팁

Cloud Code를 사용하여 비용을 절감하려면 아래의 팁을 따르십시오.
  • 모듈 함수 응답에 자신이 사용하는 데이터만 포함합니다. 모듈 함수 응답에 포함된 데이터는 사용되지 않더라도 송신 비용에 영향을 미칩니다.
  • Cloud Code 모듈 함수를 15초로 할당된 타임아웃 내에 완료합니다. 의도치 않은
    while(true)
    루프로 인해 예상치 못한 비용이 발생할 수 있습니다.
  • 한꺼번에 배치 실행이 가능한지 고려합니다. 예를 들어 Cloud Code 모듈 함수
    FuncExampleB
    FuncExampleA
    의 응답에 종속된다고 가정하겠습니다. 이 함수를 개별적으로 호출하면 두 가지 로직을 하나의 모듈 함수 요청으로 결합하는 경우에 비해 비용이 두 배로 늘어날 수 있습니다.

커맨드 배칭

커맨드 배칭은 각 게임 액션이 하나의 커맨드가 되고, 이 커맨드를 대기열에 모아서 서버로 일괄 전송해 처리하는 개념입니다. 자세한 내용은 커맨드 배칭 페이지를 참고하십시오. 예를 들어,
Cloud Save
를 호출하여 플레이어 경험치를 분배하고
Economy
를 호출하여 코인을 분배하는 식으로 각 액션이 이루어진 후에 보상을 분배하는 게임을 떠올려 보십시오. 플레이어가 다음과 같은 세 가지 액션을 완료합니다.
  • 첫 번째 액션으로 인해 경험치 100과 코인 10개가 생깁니다.
  • 두 번째 액션으로 인해 경험치 50과 코인 5개가 생깁니다.
  • 세 번째 액션으로 인해 경험치 200과 코인 30개가 생깁니다.
이 호출을 개별적으로 실행하는 경우에는 이 세 가지 행동으로 인해 다수의 Unity 서비스, 즉 이 예시에서는 Cloud Save와 Economy를 도합 6번 이상 호출해야 합니다. 하지만 이 세 가지 액션을 모두 배치 커맨드로 저장하면 단 한 번의 Cloud Code 모듈 함수 요청으로 처리할 수 있습니다. 즉, Cloud Save를 한 번 호출하여 게임에서 경험치를 350 증가시키고, Economy를 한 번 호출하여 45개의 코인을 추가하는 방식으로 Unity 서비스를 두 번만 호출하면 됩니다.