TTFB
TTFB(Time To First Byte)는 사용자가 요청을 보낸 시점부터 서버의 첫 바이트가 브라우저에 도착하기까지 걸리는 시간이다. 웹 페이지의 실제 체감 속도는 단순 페이지 로드 시간만이 아니라 이 첫 반응의 속도에 크게 좌우된다.
TTFB를 구성하는 구간
[DNS 조회] → [TCP/TLS 연결] → [요청 전송] → [서버 처리] → [첫 바이트 수신]
↑
이 시점까지가 TTFB
- DNS 조회 시간
- 연결 설정 시간 (TCP + TLS 핸드셰이크)
- 요청 전송 시간
- 서버 처리 시간 (가장 큰 변수)
기준
Google Web Vitals 가이드라인:
| 상태 | TTFB |
|---|---|
| 좋음 | 0.8초 이하 |
| 개선 필요 | 1.8초 이하 |
| 나쁨 | 1.8초 초과 |
TTFB를 줄이는 전략
서버 단
- DB 쿼리 최적화, 인덱스 점검
- 캐시 도입 (Redis, Memcached)
- 애플리케이션 코드 최적화
- 응답시간이 긴 외부 의존을 비동기화
네트워크 단
- CDN 사용으로 물리 거리 단축
- HTTP/2, HTTP/3로 연결 오버헤드 감소
- TLS 세션 재사용
아키텍처 단
- 엣지 컴퓨팅 (Edge Device)
- 정적 콘텐츠 분리
- 적절한 로드 밸런싱
TTFB의 한계
TTFB가 빠르다고 사용자 경험이 좋은 것은 아니다. 첫 바이트 이후 FCP까지의 렌더링 속도도 중요하다. TTFB는 서버 응답 속도의 지표로 이해하고, FCP, LCP와 함께 봐야 한다.
관련 노트
- FCP: 첫 콘텐츠가 화면에 그려지는 시점
- 응답시간: 사용자 체감 속도 전반
- UX 품질: 성능이 UX에 미치는 영향
- Data Driven UX: 지표 기반 UX 개선