서버시간과 표준시간의 차이
# 서버시간과 표준시간의 차이 — 0.1초가 당락을 가르는 진짜 이유
티켓팅 오픈 시각에 맞춰 클릭했는데 "매진"이라는 두 글자가 뜬다. 수강신청 정각에 접속했는데 대기 순번은 이미 세 자릿수. 내 시계는 분명 10시 정각이었다. 문제는 내 시계가 아니라, 서버의 시계다.
서버시간과 표준시간은 같아 보이지만 실제로는 항상 벌어져 있다. 이 글에서는 그 차이가 왜 발생하는지, 실전에서 어떤 의미를 갖는지, 그리고 어떻게 이용해야 하는지를 처음부터 끝까지 짚는다.
표준시간: 원자가 정의하는 "진짜 시간"
UTC와 KST의 구조
우리가 "정확한 시간"이라 부르는 것은 협정세계시(UTC)다. 단일 시계가 아니라 전 세계 80개국 450대 이상의 원자시계 데이터를 프랑스 국제도량형국(BIPM)이 가중 평균해 산출하는 합의된 시각이다. 세슘-133 원자의 진동을 기준으로 1초를 정의하며, 이론적 오차는 3,000만 년에 1초 이내다.
한국표준시간(KST)은 대전 한국표준과학연구원(KRISS)이 UTC+9로 유지한다. 스마트폰과 PC는 NTP(Network Time Protocol)를 통해 이 표준시간에 자동 동기화된다. 그래서 대부분의 사람들은 "내 시계는 정확하다"고 믿는다. 그 믿음이 틀린 건 아니다. 문제는 상대방 서버의 시계도 정확한지 여부다.
NTP는 완벽하지 않다
NTP는 1985년부터 쓰인 시간 동기화 프로토콜이다. 이상적 환경에서 1~5밀리초(ms) 이내 오차를 유지할 수 있지만, 현실에서는 변수가 많다. 네트워크 혼잡, 비대칭 라우팅, NTP 서버 계층(stratum) 깊이에 따라 오차가 수십~수백 밀리초까지 벌어진다. "NTP로 동기화됨 = 정확함"이라는 등식은 조건부로만 성립한다.
서버시간: 각 사이트가 가진 "자기만의 시계"
서버시간은 특정 웹사이트를 운영하는 서버 컴퓨터의 내부 시계가 가리키는 시각이다. 인터파크 서버에는 인터파크의 시계가, 멜론티켓 서버에는 멜론티켓의 시계가 따로 있다. 각 서버도 NTP를 통해 표준시간에 맞추지만, 그 정밀도는 천차만별이다.
차이가 생기는 네 가지 원인
**하드웨어 클럭 드리프트.** 서버의 물리적 시계(RTC)는 수정 발진자를 사용한다. 온도, 전압, 부품 노후화에 따라 시간이 지나면서 빨라지거나 느려진다. NTP가 주기적으로 교정하지만, 동기화 간격(64초~1,024초) 사이에는 드리프트가 누적된다. 가상 서버(VM)는 하이퍼바이저 레이어가 추가되어 물리 서버보다 불안정한 경우가 많다.
**NTP 설정 품질 격차.** AWS의 Amazon Time Sync Service나 Google Cloud의 time.google.com은 자체 Stratum 1 NTP 인프라로 서버 시계를 1~5ms 이내로 유지한다. 반면 소규모 호스팅 업체의 공유 서버는 공개 NTP 풀에 의존하고, ntpd 설정이 기본값으로 방치된다. 심하면 NTP 데몬 자체가 꺼져 있어 부팅 시점의 시각에서 드리프트만 쌓이는 서버도 있다.
**네트워크 왕복 지연(RTT).** 서버시간을 확인하려면 HTTP 요청을 보내고 응답을 받아야 한다. 이 왕복 시간이 측정값에 오차로 더해진다. 서울 기준 국내 서버 10~30ms, 일본 40~80ms, 미국 150~300ms. 응답 헤더의 Date 값만 단순히 읽으면 이 지연이 그대로 오차가 된다.
**트래픽 폭주에 의한 응답 지연.** 평소 20ms이면 처리되는 요청이 티켓팅 오픈 직전 수만 명 동시접속 상황에서는 500ms~2초 이상으로 늘어난다. 서버 내부 시계 자체는 정확해도, 그 시간 정보가 사용자에게 도달하기까지의 지연이 급격히 길어진다.
서버 유형별 실제 오차 범위
수치로 보면 차이의 감각이 잡힌다.
대형 클라우드 서버 (AWS, GCP, Azure)
내부 시계 오차 1~10ms. 사실상 무시 가능하다. 하지만 사용자에게 전달되는 과정에서 네트워크 지연이 추가되므로, 관측 시점의 오차는 이보다 크다.
일반 웹 호스팅 / 소규모 VPS
내부 시계 오차 50~500ms. NTP 설정 미흡이 원인이다. 운이 나쁘면 수 초 단위 오차도 발생한다. 대학교 수강신청 서버 중 상당수가 이 범주에 해당한다.
티켓팅 사이트 (이벤트 시점)
서버 자체는 클라우드 기반이라 내부 오차 수 ms 이내. 그러나 트래픽 폭주 시 응답 지연 0.3초~2초가 추가된다. 사용자가 체감하는 오차의 대부분은 여기서 온다.
CDN 엣지 서버
사용자와 가까워 RTT는 짧지만, 엣지 서버의 시계와 오리진 서버의 시계가 다를 수 있다. 티켓팅 오픈 판단은 오리진에서 이루어지므로, 엣지의 Date 헤더를 과신하면 안 된다.
내 PC 시계가 정확해도 소용없는 이유
여기가 핵심이다. 대부분의 사람들이 "내 시계만 정확하면 된다"고 생각하지만 현실은 정반대다. **티켓팅 사이트는 내 PC 시계를 보지 않는다. 자기 서버의 시계를 본다.**
인터파크 서버 시계가 표준시간보다 +0.5초라고 하자. 내 노트북이 KST에 완벽히 동기화되어 있어도, 인터파크 기준으로는 내 시계의 09:59:59.500이 이미 10:00:00.000이다. 내 시계만 보고 정각에 클릭하면, 서버 입장에서는 0.5초 늦은 것이다.
반대로 서버가 -0.3초라면, 내 시계의 10:00:00.300까지는 아직 서버에서 오픈 전이다. 이 차이를 모르면 타이밍 전략 자체가 성립하지 않는다. 서버시간 확인 방법을 먼저 숙지하는 것이 모든 실전 전략의 출발점이다.
서버시간 확인 도구: 네이비즘과 게이비즘
서버시간 확인 서비스로 가장 많이 언급되는 두 가지가 네이비즘과 게이비즘이다.
네이비즘은 2008년부터 운영된 국내 최초의 서버시간 확인 서비스다. 인터파크, 멜론티켓, YES24, 티켓링크 등 주요 티켓팅 사이트가 사전 등록되어 있어 목록에서 선택하면 바로 확인할 수 있다. 오랜 역사 덕분에 커뮤니티 인지도가 높다. 네이비즘 사용법 가이드에서 자세한 이용법을 확인할 수 있다.
게이비즘([gayvism.com](https://gayvism.com))은 URL 직접 입력 방식을 채택한 서비스다. 네이비즘에 등록되지 않은 사이트도 URL만 알면 서버시간을 측정할 수 있다는 것이 가장 큰 차이점이다. 소규모 공연장 자체 예매 시스템, 각 대학교 수강신청 서버, 해외 쇼핑몰까지 제한 없이 확인 가능하다. RTT 보정 알고리즘을 적용해 네트워크 왕복 지연으로 인한 측정 오차를 최소화하고, 30초마다 자동 재동기화로 시간 변동을 실시간 추적한다. 두 서비스의 기능별 차이는 네이비즘 대안 비교에서 정리해두었다.
실전에서 반드시 지켜야 할 다섯 가지 원칙
1. 오픈 5분 전부터 실시간 모니터링
서버시간은 고정값이 아니다. NTP 재동기화, 부하 변동, 네트워크 경로 변화에 따라 계속 움직인다. 오픈 직전에는 트래픽 급증으로 응답 패턴이 평소와 완전히 달라진다. 한 번 확인하고 방심하면 안 된다.
2. RTT 보정 없는 도구는 쓰지 않는다
서버 응답의 Date 헤더만 읽어서 보여주는 도구는 네트워크 왕복 시간을 전혀 반영하지 않는다. 여러 차례 요청을 보내 왕복 시간을 측정하고 차감 보정하는 도구를 사용해야 실제 서버시간에 가까운 값을 얻을 수 있다.
3. 오프셋을 클릭 타이밍에 반영한다
서버시간이 표준시간보다 +0.5초라면, 내 시계 기준 0.5초 일찍 클릭해야 서버 기준 정각이다. -0.3초라면 0.3초 여유가 있다. 이 오프셋을 확인하고 타이밍에 반영하는 것이 핵심이다. 티켓팅 서버시간 활용법에서 구체적인 전략을 다루고 있다.
4. 실제 사용할 기기에서 측정한다
같은 와이파이라도 모바일과 PC는 네트워크 스택, 브라우저 엔진, TCP 처리 방식이 다르다. 기기별 측정 오프셋이 미세하게 다를 수 있으므로, 반드시 실제로 사용할 기기에서 직접 측정해야 한다.
5. 유선 연결을 우선한다
와이파이는 간섭과 재전송으로 RTT 분산이 크다. 0.1초를 다투는 상황에서 유선 이더넷은 안정적인 측정 환경을 만들어준다. 환경이 허락한다면 유선을 선택하자.
정리
표준시간은 전 세계 원자시계가 합의한 이론적으로 가장 정확한 시각이다. 서버시간은 각 웹사이트가 자체적으로 유지하는 시각이다. 둘 사이에는 하드웨어 드리프트, NTP 설정 품질, 네트워크 지연, 서버 부하라는 네 가지 요인에 의한 차이가 항상 존재하며, 이 차이가 티켓팅과 수강신청의 성패를 좌우한다.
중요한 것은 내 시계가 아니라 상대방 서버의 시계다. [게이비즘](https://gayvism.com)에서 원하는 사이트의 URL을 입력하고, 서버시간과 표준시간의 차이를 직접 확인해보자. RTT 보정과 30초 자동 재동기화로 가장 정확한 서버시간을 실시간으로 볼 수 있다.