This document is about: SERVER 4
SWITCH TO

클러스터 샤딩

이 페이지는 Photon Enterprise Cloud 만을 위한 것 입니다.

Photon 클러스터 정의

Photon 클러스터는 등록된 마스터 서버와 N-게임 서버의 조합입니다. 단일 클러스터는 동시에 최대 50K CCU를 지원할 수 있습니다. 그 이상으로 필요한 것은 더 많은 샤딩 및 새로운 클러스터가 필요합니다. Photon NameServer는 클러스터간에 플레이어의 로드 밸런싱을 자동으로 조정합니다.

클러스터 작업

네임 서버에서 호출된 "GetRegion" 오퍼레이션 대한 응답은 모든 지역에서 사용 가능한 모든 클러스터 목록을 리턴합니다. 리턴되는 결과는 "{region}/{cluster}" 의 특별한 형식 문자열 배열입니다. 각 항목에는 "/" 로 분리된 지역 및 클러스터 부분을 갖고 있습니다.

예제:

2개의 마스터 서버가 "EU" 지역에서 실행되면 다음과 같이 리턴됩니다:

  • "EU/Default"
  • "EU/Cluster2"

"Authenticate" 오퍼레이션을 호출할 때, 요청 파라미터 "Region" (바이트 코드 210)을 통해 클러스터를 선택하는 3가지의 옵션이 있습니다:

기본 클러스터

지역만 지정하는 경우 항상 기본 "첫번째" 클러스터로 라우팅 됩니다. 현재 클라이언트 SDK의 기본 동작입니다. 다른 두 옵션은 제품에서 지원되지 않습니다.

잘못된 형식으로 문자열을 지정하거나 존재하지 않는 지역/클러스터 조합을 지정하면 인증이 오류 코드 "InvalidRegion" (바이트 코드 32756)로 실패합니다.

예제:

  • "EU" -> 항상 "EU/Default" 로 라우팅됩니다.

특정 클러스터

다음 형식으로 지역과 클러스터를 명시적으로 전달할 수 있습니다: "{region}/{cluster}".

이 경우, 선택한 지역의 특정 클러스터로 연결될 것 입니다.

잘못된 형식으로 문자열을 지정하거나 지역/클러스터 조합이 인증되지 않는 경우 "InvalidRegion" (바이트 코드 32756) 에러코드가 리턴되며 실패할 것 입니다.

예제:

  • "EU/Default" -> "EU/Default" 로 라우팅.
  • "EU/Cluster2" -> "EU/Cluster2" 로 라우팅.

랜덤 클러스터

이는 옵션 2와 같지만 명시적으로 클러스터를 선택하는 대신 서버가 임의로 클러스터를 선택하도록 하는 것입니다. 이렇게 하려면 클러스터로 와일드 카드 또는 별표('*')로 설정할 수 있습니다. 잘못된 형식으로 문자열을 지정하거나 지역/클러스터 조합이 인증되지 않는 경우 "InvalidRegion" (바이트 코드 32756) 에러코드가 리턴되며 실패할 것 입니다.

"Authenticate" 오퍼레이션은 "Cluster" (바이트 코드 196) 라고하는 리턴되는 파라미터 값을 포함한 응답이 포함됩니다. 이 값은 라우팅 된 클러스터를 나타냅니다. 예를 들어, 이 정보를 사용하여 다른 클라이언트(예:친구)에게 어디에서 나를 찾아 경기에 참여할 수 있는지 알려 줄 수 있습니다.

예제:

  • "EU/*" -> 무작위로 "EU/Default" 또는 "EU/Cluster2" 라우팅됩니다.

고려사항

클러스터는 물리적, 논리적으로 분리된 엔티티이므로 다음 사항을 고려해야 합니다:

  • 어플리케이션과 로비 통계는 클러스터당 마스터 서버를 기준으로 계산됩니다.
  • 기본적으로 Photon 지역에는 단일 클러스터를 가지고 있습니다. 그러나 지나치게 많은 CCU가 있을 경우 클러스터 공유가 필수입니다. 클러스터가 여러개인 단일 영역에 대한 전체적인 아이디어를 얻으려면 해당 영역의 모든 클러스터를 기반으로 영역 통계를 집계하고 계산해야 합니다.
  • 동일한 클러스터에 연결된 플레이어만 서로 만날 수 있습니다. 만약 당신이 같은 지역에서 다른 사람과 플레이하고 싶은 친구를 원한다면 클러스터 정보를 전송해야 하며 클러스터 간에 전환해야 할 수도 있습니다.
Back to top