← 문제 라이브러리
Network 중급 16분

대용량 리포트 내보내기만 정확히 60초 만에 504 Gateway Timeout

관리자 화면의 매출 리포트 내보내기가 기간을 석 달 이상으로 잡으면 정확히 60초 만에 504 Gateway Timeout으로 끝납니다.

검수된 문제무료
시나리오

관리자 화면의 매출 리포트 내보내기가 기간을 석 달 이상으로 잡으면 정확히 60초 만에 504 Gateway Timeout으로 끝납니다. 한 달 치는 잘 됩니다. 이상하게도 앱 로그에는 같은 요청이 75초쯤 뒤 200으로 끝났다고 남아 있습니다. 지난달 데이터가 크게 늘었습니다. 담당자는 네트워크가 불안정하다며 인프라팀에 회선 점검을 요청하려 합니다. 다른 관리자 화면과 API는 모두 빠르게 응답합니다. 재무팀은 월말 결산 때문에 오늘 안에 석 달 치 리포트를 받아야 합니다.

단서
Nginx 오류 로그
2026/09/27 14:21:08 [error] 812#812: *5521 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 10.8.14.22, server: admin.acme.dev, request: "GET /api/reports/export?from=2026-06-01&to=2026-09-01 HTTP/1.1", upstream: "http://127.0.0.1:8080/api/reports/export?…"
앱 로그 · Nginx 설정
14:21:23 INFO GET /api/reports/export 200 duration=74.9s rows=2,184,003

# /etc/nginx/conf.d/admin.conf
location /api/ {
    proxy_pass http://127.0.0.1:8080;
    # proxy_read_timeout 설정 없음 (기본 60s)
}

과제 원인을 좁히고, 서비스를 되살리는 순서(검증 포함)와 재발 방지책을 적어 보세요.

먼저 볼 것
  • 프록시와 앱이 각각 기다리는 시간
  • 오래 걸리는 요청을 다루는 올바른 방식
점검 체크리스트
  1. Nginx 오류 로그의 timed out 종류(연결·응답 대기)
  2. 앱 로그의 같은 요청 처리 시간
  3. Nginx의 proxy_read_timeout과 앞단 로드밸런서의 idle timeout