TechFeedTechFeed
Vercel런타임

Vercel 함수 타임아웃 — FUNCTION_INVOCATION_TIMEOUT

504: GATEWAY_TIMEOUT / FUNCTION_INVOCATION_TIMEOUT
한 줄 해결: 서버리스 함수가 실행 시간 한도를 넘겨 종료된 것으로, 작업을 줄이거나 maxDuration을 늘리거나 백그라운드/스트리밍으로 전환합니다.

이런 증상일 때

API 라우트·서버 함수 호출이 504로 끊기고 로그에 타임아웃이 찍힙니다. 외부 API 지연, 무거운 연산, 큰 응답에서 발생합니다.

원인

  • 함수 실행이 플랜·설정상 허용된 최대 시간을 초과
  • 외부 API/DB 응답 지연을 기다리며 함수가 길게 점유
  • 대용량 처리·동기 루프로 실행 시간이 늘어남

해결 방법

1
maxDuration 상향

라우트별로 허용 실행 시간을 설정합니다(플랜 한도 내).

export const maxDuration = 60 // 초
2
작업 분할·비동기화

오래 걸리는 작업은 큐/백그라운드 작업으로 빼고 즉시 응답합니다. 결과는 폴링/웹훅으로 전달합니다.

3
스트리밍 응답

LLM 응답처럼 긴 작업은 스트리밍으로 부분 전송해 게이트웨이 타임아웃을 피합니다.

💡 예방: 외부 호출에 타임아웃·재시도를 걸고, 무거운 작업은 함수 밖(큐·크론)으로 분리하세요.
Verceltimeout서버리스maxDuration504

관련 에러

관련 가이드

Supabase vs Firebase vs PlanetScale 비용 비교 2026 — MAU별 실비용·기능·선택 기준서버리스 함수 비교 2026 — Vercel vs Cloudflare vs AWS LambdaAWS re:Invent 2026 개발자 핵심 발표 요약Vercel vs Netlify vs Cloudflare Pages — 2026 배포 플랫폼 비교