기술

안테나에서 방송까지, 결정론적으로.

기술 평가자를 위한 파이프라인 내부: 위치 측정값 하나가 1초도 안 되어 실시간 순위, 구간 기록, 리플레이가 되는 과정.

01 · 수집

전체 출전마를, 병렬로

각 말은 초당 100회 위치를 전송하는 RTK GNSS 수신기를 장착합니다. 텔레메트리는 20+개의 병렬 UDP 채널로 도착하며 — 전체 출전마가 경합 없이 동시에 수집됩니다.

백엔드는 Rust로 작성되었습니다: 메모리 안전, 예측 가능한 지연 시간, 부하 상황에서도 GC 멈춤 없음. 트래픽 급증은 백프레셔와 점진적 성능 저하로 처리됩니다 — 패킷 손실은 부드러움에만 영향을 주고, 정확성에는 영향을 주지 않습니다.

NMEA 융합 · 측정별

  • GGA 위치 + 측정 품질 (RTK 4/5)
  • VTG 지면 속도 + 방향
  • GST 측정별 정확도 추정
  • → 센티미터급 RTK 정밀도의 일관된 단일 데이터 포인트로 융합

02 · 경주 엔진

시스템이 경주 상태를 인식합니다

출발 트리거, 실시간 순위, 결승 감지 — 사람의 개입 없이. 통과 판정은 PostGIS 기하 연산으로 계산되어 출발, 결승, 모든 중간 계시선에서 정확한 시각을 제공합니다. 결승선과 출발선이 달라도 다중 바퀴 계산은 정확합니다.

  1. scheduled
  2. warmup
  3. active
  4. finished
  5. official

구간 기록

모든 계시선에서 말별 통과 시각, 실시간 — 경주가 끝난 후가 아니라 진행 중에.

실시간 순위

순위, 시간·거리 차이, 순간·평균 속도 — 전체 출전마에 대해 지속적으로 재계산.

피드 속 경주 환경

실시간 배당률과 기상 정보가 경주 피드에 직접 통합됩니다.

03 · 저장 & 감사

모든 측정값 저장. 모든 경주 감사 가능.

모든 텔레메트리는 PostgreSQL + PostGIS에 저장됩니다. 어떤 경주든 측정값 단위로 재생할 수 있고, 모든 순위와 구간 기록은 그것을 만들어낸 원시 위치까지 추적할 수 있습니다.

리플레이는 컴팩트 궤적 API로 로드됩니다 — 서버 측 샘플링으로 로딩이 10–20× 빨라지고, 클라이언트에서 부드럽게 보간됩니다.

04 · API

깔끔한 REST + WebSocket API

실시간 데이터는 장비별·경주별 구독이 가능한 WebSocket으로 무제한 동시 시청자에게 전송됩니다. 과거 데이터, 리플레이, 분석은 REST로 제공됩니다. 전체 시스템은 단일 바이너리로 배포됩니다 — 백엔드와 프런트엔드가 하나의 산출물.

연동 문의 →