피드로 돌아가기
How I Built Sub-50ms QR Code Redirects with nextjs, performance, Cloudflare Workers
Dev.toDev.to
Infrastructure

리다이렉트 Latency 750ms에서 40ms로 단축한 Edge 아키텍처

How I Built Sub-50ms QR Code Redirects with nextjs, performance, Cloudflare Workers

Max LIAO2026년 4월 6일3intermediate

Context

Next.js 및 Vercel 기반의 서버리스 환경에서 Cold start 발생. 단일 리전 구성으로 인한 네트워크 지연 시간 증가. 데이터베이스 쿼리 비용 추가로 사용자 경험 저하.

Technical Solution

  • 리다이렉트 로직을 Cloudflare Workers로 이전하여 전 세계 Edge Node에서 처리하는 구조
  • 브라우저 캐싱을 방지하고 목적지 URL의 유연한 변경을 위해 301 대신 302 리다이렉트 전략 채택
  • request.cf 객체를 활용하여 외부 API 호출 없이 접속자의 도시, 국가, 위경도 정보를 즉시 획득
  • ctx.waitUntil() 함수를 사용하여 분석 데이터 저장을 비동기 배경 작업으로 처리하고 응답 속도 최적화
  • QR 생성 및 관리 기능은 Next.js가 담당하고 리다이렉트 전용 경로만 Edge Worker가 처리하는 책임 분리 설계

Impact

  • 평균 리다이렉트 시간: ~750ms → ~40ms
  • Cold start: 발생 → 제거
  • 배포 위치: 1개 리전 → 300개 이상 도시
  • 인프라 비용: Vercel 통합 비용 → 월 약 $5

Key Takeaway

사용자 응답 속도가 핵심인 기능은 메인 애플리케이션 서버가 아닌 물리적으로 가장 가까운 Edge 단에서 처리하는 책임 분리 아키텍처가 효율적임.


전역 서비스의 단순 리다이렉트나 가벼운 로직은 Edge Worker와 비동기 이벤트 처리(waitUntil)를 조합하여 Latency를 최소화할 것

원문 읽기