Anycast/지역 라우팅 + UDP 게이트웨이 + 패킷 축약으로 지연/지터 최소화.
Low Latency
Authoritative
Matchmaking
게임서버 (세션 · 매치메이킹)
실시간 멀티플레이를 위한 권위 서버(Authoritative) 구조, 지연/실력 기반 매치메이킹, UDP 게이트웨이와 디도스보호(프록시)까지. 설계·구축·운영을 원스톱으로 제공합니다. 요금은 별도문의입니다.
치트 방지/결정적 시뮬레이션. 틱레이트/보간(Interpolation)/재동기화 제공.
MMR/Elo/파티/대기시간/핑 윈도우를 종합한 다기준 매칭.
레이어3~7 보호, UDP 프록시, 레이트 제한/ACL/Geo/ASN 정책.
레퍼런스 아키텍처
UDP 게임 게이트웨이 — Anycast IP, 세션 식별, 패킷 검증, 디도스보호(프록시) 연동.
세션/로비 서비스 — 로그인·파티·인벤토리·매치 큐 API (HTTPS, 토큰 기반).
매치메이커 — MMR/핑/지역/파티 크기 기준으로 큐를 배치, 백필(Backfill) 지원.
룸/샤드 서버 — 권위 시뮬, 틱/스냅샷/델타, 스테이트 체크포인트.
스테이트 스토어 — Redis(세션/임시), DB(영속), 큐(Kafka) 이벤트 버스.
관측/알림 — 메트릭/로그/트레이싱과 대시보드, SLO 기반 알림.
매치 기준/알고리즘
| 기준 | 설명 | 노트 |
|---|---|---|
| MMR/Elo | 실력 점수/분산(σ)로 매칭 품질 보장 | 초기 배치/Decay/보호 구간 |
| 지연(핑) | 지역/PoP 기준 핑 윈도우 확장 매칭 | 대기시간에 따라 허용 범위 증가 |
| 파티 크기 | 파티 유지, 상대 파티 구조 맞춤 | 스머핑/부스팅 방지 규칙 |
| 역할/모드 | 역할 기반(힐/탱/딜) 또는 모드 선호 | 큐 분산/백필 정책 |
세션/스테이트 관리
| 항목 | 내용 |
|---|---|
| 스티키/세션 이동 | IP Hash/토큰 스티키 + 서버 드레이닝 시 안전 이동(서버 핸드오프) |
| 스냅샷/델타 | 상태 스냅샷 + 델타 브로드캐스트로 대역폭 최적화 |
| TTL/정리 | 유휴 세션 TTL 자동 종료/리소스 반환, 유실 패킷 보정 |
| 영속화 | 매치 결과/메타/인벤토리 DB 커밋, 이벤트 소싱(옵션) |
네트워크 / 보안
| 영역 | 구성 | 설명 |
|---|---|---|
| UDP 게이트웨이 | Anycast IP, 포트 매핑 | 지역 최단 경로 진입, 패킷 검증/속도 제한 |
| 디도스보호(프록시) | L3~7 보호 | 시그니처/행위 기반, 레이트/커넥션 제한, Geo/ASN ACL |
| TLS/인증 | 게임 API(HTTPS) | JWT/OAuth 토큰, 재생 공격 방지(Nonce/TS) |
운영 / 배포
드레이닝 — 매치 종료/타임아웃 기반 서버 교체, 새 매치는 신버전으로.
카나리/블루-그린 — 비율 조절(10%→50%→100%), 롤백 원클릭.
용량 계획 — 동시접속/틱레이트/지역별 큐 대기시간 기반 예측 스케일.
릴레이/리플레이 — 경기 기록/리플레이 저장(선택).
패치 윈도우 — 지역/시간대 분산 배포.
컴플라이언스 — 개인정보 분리 보관/암호화, 감사 로그.
모니터링 / 지표
| 카테고리 | 지표 | 설명 |
|---|---|---|
| 지연 | RTT p50/p95/p99, Jitter | 지역/ISP/PoP별 분포 |
| 서버 | Tick Time, CPU/메모리, 소켓 수 | 틱 초과/프레임 드롭 경보 |
| 매치 | 큐 대기 p50/p95, 매치 품질 점수 | 품질-대기시간 트레이드오프 추적 |
| 네트워크 | 패킷 손실률, 재전송률 | 게이트웨이/지역별 |
| 보안 | 차단/우회 시도, 레이트 제한 히트 | 실시간 알림 |
매치메이커 요청(JSON)
{
"player_id": "p_10293",
"party_id": "pt_7788",
"mmr": 1540,
"region": ["kr", "jp"],
"ping_ms": { "kr": 18, "jp": 35 },
"role": "healer",
"mode": "ranked",
"constraints": { "max_wait_s": 60, "skill_delta": 150 }
}
UDP 프록시(예: HAProxy/DTLS 개념)
frontend udp-gw bind :30000-30100 proto udp mode tcp default_backend room-pool backend room-pool balance leastconn server room1 10.0.0.11:30001 check server room2 10.0.0.12:30002 check
Redis 세션 스키마(예)
// Key: sess:{token}
```
{
"player\_id": "p\_10293",
"room": "r\_3301",
"region": "kr",
"expires\_at": 1699999999,
"attrs": { "party": "pt\_7788", "platform": "pc" }
}
// TTL: 10m, 연장: 핑 수신 시 요금 안내
요금: 별도문의
동시접속/틱레이트/지역 수/디도스보호(프록시) 범위/운영 지원 레벨에 따라 산정합니다.
지연은 낮게, 매치는 공정하게
요건을 알려주시면 최적의 아키텍처/용량/운영 계획을 제안드립니다.
게임서버 상담/견적
ℹ️
개인정보 처리 안내
문의 응대를 위해서만 사용되며 일정 기간 후 파기됩니다.