> For the complete documentation index, see [llms.txt](https://docs.edgegap.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.edgegap.com/ko/learn/orchestration/ping-beacons.md).

# 핑 비컨

핑 비콘을 사용하여 먼 지역의 플레이어와 매칭되는 것을 방지하고 플레이어 경험을 향상하세요.

## 🟢 연결 품질

서버 연결 품질은 각 플레이어마다 다르며 다음을 포함한 여러 요인의 영향을 받습니다:

* Wi‑Fi 신호 강도(무선 또는 모바일인 경우),
* 인터넷 서비스 제공업체 상태,
* 로컬 네트워크 상태,
* 사용된 네트워킹 프로토콜,
* 가상 사설망(VPN) 사용,
* 또는 국가별 제한 사항.

플레이어 핑을 최소화하고 **가능한 한 최적의 플레이어 매칭을 제공하며** 그리고 [배포](/ko/learn/orchestration/deployments.md#server-placement) 최적이 되도록 게임 클라이언트는 **핑 비콘을 사용해 지연 시간을 측정합니다** 전 세계 여러 주요 네트워크 노드까지의 지연 시간을 실시간으로 측정합니다. 실제 패킷 왕복 시간을 측정하면 위에서 언급한 모든 요소를 반영하며, 특정 시점에서 가장 정확한 지표를 제공합니다.

다음을 유의하세요: **비콘 핑이 높다고 해서 서버 핑이 높은 것은 아닙니다**, 서버는 비콘보다 더 촘촘하게 배치되어 있기 때문입니다. 비콘 수는 최적의 범위, 최소 필요 데이터 전송, 그리고 측정 완료까지의 최단 시간을 위해 실시간으로 균형을 맞춥니다.

Edgegap의 모니터링에 더해, 다음을 권장합니다 **자체 클라이언트 측 분석을 구현하여** 매치메이킹 시 플레이어 인구 통계와 연결 품질을 추적하여, 문제를 최대한 빠르게 발견, 우선순위 지정 및 해결할 수 있도록 하세요.

## 🗼 핑 비콘 소개

플레이어가 직접 핑을 보낼 수 있는 비콘 목록을 다음에서 가져오세요:

* 매치메이커 [심층 살펴보기](/ko/learn/matchmaking/matchmaker-in-depth.md#matchmaking-api) 게임 클라이언트에서,
* Edgegap API [엔드포인트 /locations/beacons](https://docs.edgegap.com/api/#tag/Locations/operation/location-beacon-list) 를 사용하여 [Edgegap API 토큰](https://app.edgegap.com/user-settings?tab=tokens) (백엔드에서).

핑 비콘은 여러 용도로 동시에 사용할 수 있습니다:

* 높은 지연 시간의 매치를 방지합니다 [#measuring-round-trip-time](#measuring-round-trip-time "mention") 자동으로.
* 제공하는 [#hub-selection-ui](#hub-selection-ui "mention") 플레이어가 선호하는 허브를 골라 선택할 수 있도록,
* 제공하는 [#region-selection-ui](#region-selection-ui "mention") 플레이어가 멀리 떨어진 지역을 제외할 수 있도록,

{% hint style="info" %}
**요청이 너무 많음 429** - 플랫폼 안정성을 보장하기 위해, 우리는 **귀 조직의 요청을 제한합니다** **초당 40 요청(req/s)** 이 API 엔드포인트에 대해. 다음을 구현하세요: [#active-cache](#active-cache "mention") 속도 제한에 걸리지 않도록.
{% endhint %}

{% hint style="success" %}
[#measuring-round-trip-time](#measuring-round-trip-time "mention") 를 사용하여 **ICMP, UDP 또는 TCP 핑은 속도 제한이 적용되지 않습니다**.
{% endhint %}

## 🗺️ 지역 선택 UI

게임 UI에서 활성화하거나 비활성화할 지역 목록을 제공하여 사용자가 특정 지역의 다른 사용자와 매칭되지 않도록 하세요.

**지연 시간이 높은 지역을 자동으로 비활성화합니다:**

* 사용 가능한 모든 비콘을 나열하고,
* 수행하세요 [#measuring-round-trip-time](#measuring-round-trip-time "mention") 모든 비콘에 대해
* **모든 비콘에 대해 측정된 지연 시간이 지정된 임계값을 초과하면 해당 지역을 비활성화합니다.**

임계값은 게임 설계 세부 사항에 따라 달라지며, 지연 시간이 200ms(밀리초) 미만인 지역에서 매칭하는 것을 권장합니다.

{% hint style="info" %}
플레이어가 재정의하도록 허용하려면 [배포](/ko/learn/orchestration/deployments.md#server-placement) 원격 측에 비콘 IP를 제공할 때 [매치메이킹](/ko/learn/matchmaking/matchmaker-in-depth.md#endpoint-tickets) 또는 [배포 중](/ko/docs/api/dedicated-servers.md#deployments). 최상의 플레이어 경험을 위해, 원격에 위치한 서버로 인해 지연 시간이 증가할 수 있음을 플레이어에게 경고하세요.
{% endhint %}

모든 비콘에 대해 핑이 높은 일부 플레이어는 다음과 같은 이유로 인해 ISP[^1] 문제나 느린 연결(예: 무선/모바일)로 인해 지연이 발생하고 다른 사람들의 게임 경험을 저하시킬 수 있습니다. 이 문제를 완화하려면:

* 허용 지연 최대값과 차이를 점진적으로 확장하십시오(참조 [고급 예제 구성](/ko/learn/matchmaking.md#advanced-example)),
  * 핑이 높은 플레이어는 매치를 찾는 데 평소보다 더 오래 기다려야 할 수 있습니다.
* 또는 플레이어가 수동으로 지역을 선택하여 측정을 재정의하도록 허용하고, 선택한 지역에 대해서만 가짜 핑 값을 전송하도록 할 수 있습니다(예: 빠른 매치를 위해 25ms),
  * 이것은 플레이어의 팀원 및 상대방의 플레이어 경험에 부정적인 영향을 미칠 수 있습니다.

{% hint style="info" %}
**높은 비콘 핑이 항상 높은 서버 핑으로 이어지는 것은 아닙니다**배포는 비콘보다 더 많은 위치에서 이용 가능합니다. 비콘은 글로벌 커버리지와 신뢰성을 우선으로 실시간으로 오케스트레이션됩니다.
{% endhint %}

{% hint style="success" %}
보기 [매치메이킹](/ko/learn/matchmaking.md) 위해 **우리의 SDK를 사용한 자동 핑 측정**.
{% endhint %}

## 📍 허브 선택 UI

일부 플레이어는 위치의 완전한 목록에서 선택할 수 있기를 선호합니다.

**지연 시간이 높은 허브를 자동으로 비활성화합니다:**

* 사용 가능한 모든 비콘을 나열하고,
* 수행하세요 [#measuring-round-trip-time](#measuring-round-trip-time "mention") 모든 비콘에 대해
* **측정된 지연 시간이 지정된 임계값을 초과하면 허브를 비활성화하고,**
* City 비콘 속성을 사용하여 게임 UI에서 활성화된 허브를 식별하세요.

임계값은 게임 설계 세부 사항에 따라 달라지지만, 일반적으로 지연 시간이 150ms(밀리초) 미만인 허브에서 매칭할 것을 권장합니다.

또한 UI에서 “Hub”라는 이름을 사용하거나 다른 **사용 가능한 서버 위치가 이것뿐이라는 인상을 주지 않는 이름을 사용하는 것을 권장합니다**. Edgegap은 전 세계 615개 이상의 물리적 위치와 17개 이상의 데이터 센터 제공업체에 걸쳐 게임 서버를 오케스트레이션하여 최적의 위치에 배포되도록 합니다.

{% hint style="info" %}
플레이어가 재정의하도록 허용하려면 [배포](/ko/learn/orchestration/deployments.md#server-placement) 원격 측에 비콘 IP를 제공할 때 [매치메이킹](/ko/learn/matchmaking/matchmaker-in-depth.md#endpoint-tickets) 또는 [배포 중](/ko/docs/api/dedicated-servers.md#deployments). 최상의 플레이어 경험을 위해, 원격에 위치한 서버로 인해 지연 시간이 증가할 수 있음을 플레이어에게 경고하세요.
{% endhint %}

모든 비콘에 대해 핑이 높은 일부 플레이어는 다음과 같은 이유로 인해 ISP[^1] 문제나 느린 연결(예: 무선/모바일)로 인해 지연이 발생하고 다른 사람들의 게임 경험을 저하시킬 수 있습니다. 이 문제를 완화하려면:

* 허용 지연 최대값과 차이를 점진적으로 확장하십시오(참조 [고급 예제 구성](/ko/learn/matchmaking.md#advanced-example)),
  * 핑이 높은 플레이어는 매치를 찾는 데 평소보다 더 오래 기다려야 할 수 있습니다.
* 또는 플레이어가 수동으로 지역을 선택하여 측정을 재정의하도록 허용하고, 선택한 지역에 대해서만 가짜 핑 값을 전송하도록 할 수 있습니다(예: 빠른 매치를 위해 25ms),
  * 이것은 플레이어의 팀원 및 상대방의 플레이어 경험에 부정적인 영향을 미칠 수 있습니다.

{% hint style="info" %}
**높은 비콘 핑이 항상 높은 서버 핑으로 이어지는 것은 아닙니다**배포는 비콘보다 더 많은 위치에서 이용 가능합니다. 비콘은 글로벌 커버리지와 신뢰성을 우선으로 실시간으로 오케스트레이션됩니다.
{% endhint %}

{% hint style="success" %}
보기 [매치메이킹](/ko/learn/matchmaking.md) 위해 **우리의 SDK를 사용한 자동 핑 측정**.
{% endhint %}

## 🌡️ 왕복 시간 측정

게임 개발에서 “ping”과 “latency”라는 용어는 보통 다음을 의미합니다 [패킷 왕복 시간](https://www.cloudflare.com/learning/cdn/glossary/round-trip-time-rtt/).

다음을 참조하세요 [/pages/b745b310b30c7b9cab38704ac47a25547733e403#id-5.-game-integration](https://docs.edgegap.com/ko/learn/orchestration/pages/b745b310b30c7b9cab38704ac47a25547733e403#id-5.-game-integration "mention") 자동 핑 측정을 위해:

* Unity [개발자 도구](/ko/unity/developer-tools.md#software-development-kit):
  * [Unity 패키지 관리자를 사용하여 무료로 패키지 설치](https://github.com/edgegap/edgegap-unity-sdk),
  * [시작 가이드와 완전한 예제를 살펴보세요](/ko/unity/matchmaking.md).
* 언리얼 엔진 [개발자 도구](/ko/unreal-engine/developer-tools.md#integration-kit):
  * [문서를 읽어보세요](https://egik.betide.studio/) Betide Studios 제공,
  * [Fab 마켓플레이스에서 설치](https://www.fab.com/listings/ff17ad88-12a1-49cf-9a41-31695ed11e16) (개인 용도는 무료),
  * [간단한 예제 블루프린트 가져오기](https://blueprintue.com/blueprint/m33u1okj/) (매치메이킹)을 자신의 필요에 맞게 커스터마이즈하세요.

지연 시간 측정 프로세스에 대한 자세한 개요는 [매치메이커](/ko/learn/matchmaking/matchmaker-in-depth.md):

<figure><img src="https://1562312210-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsR0dHSFv9ymoC0DO5G8J%2Fuploads%2Fn6ke8Ed6jijjdlPQ4CfP%2Fimage.png?alt=media&amp;token=c85c70b2-73af-4980-a962-488393d264e6" alt=""><figcaption></figcaption></figure>

## ⏰ 고가용성

{% hint style="danger" %}
비콘은 실시간으로 자동 재조정되며 기존 비콘을 추가/제거/교체합니다. 클라이언트와 백엔드는 이를 고려하고 **매치메이킹 라운드마다 비콘 목록을 다시 불러와야 합니다**.
{% endhint %}

## 🧠 활성 캐시

**사용하지 않는 경우** [**매치메이커**](/ko/learn/matchmaking.md) (예: Advanced Matchmaker 사용자), 대규모 출시 전에 추가적인 확장성 안전장치를 구현할 것을 권장합니다. **자체 게임 백엔드 서비스를 만드세요** 메모리 내에 중앙 집중식 캐시를 유지하고, 각 클라이언트 요청마다 저희 Beacons List API를 사용하지 않고 게임 클라이언트에 비콘 위치를 응답하는 서비스입니다.

이 서비스는 적극적으로 **60초마다 비콘 목록을 업데이트하기 위해 단일 API 요청을 보내야 합니다.**

[^1]: 인터넷 서비스 제공업체
