Serverless
서버리스 함수 실행 위치 비교
요청 처리 위치와 런타임 제약이 다르므로 데이터베이스 연결, 응답 시간, 패키지 지원 범위를 같이 봅니다.
실행 위치 선택 매트릭스
계약 / 변경 / 거리선택지
잘 맞는 경우
주의점
판단 기준
Route Handler
외부 호출과 명시적 API
webhook, REST, status code
클라이언트가 요청/응답 계약을 알아야 합니다.
응답 경계 관리
캐시, 인증, 에러 응답을 직접 정해야 합니다.
HTTP 계약이 먼저인가?
그렇다면 Route Handler가 기준점입니다.
Server Actions
화면 안의 데이터 변경
form submit, mutation, revalidate
컴포넌트 흐름과 서버 변경이 붙어 있을 때 좋습니다.
호출 경로가 숨겨짐
외부 API 계약으로 공개할 용도는 아닙니다.
UI 변경 흐름인가?
그렇다면 Action으로 응집도를 높입니다.
Edge Runtime
짧은 판정과 가까운 실행
redirect, geo, auth gate
사용자 가까이에서 빠르게 결정을 내려야 할 때 맞습니다.
Node API와 DB 연결 제약
패키지와 네트워크 경계를 배포 전에 확인합니다.
짧고 의존성이 적은가?
그럴 때만 Edge 장점이 선명합니다.
Route Handler 엔드포인트
요청 메서드, body, status code를 명시해 외부 클라이언트가 호출할 API 계약을 만듭니다.
Server Actions 처리 경로
폼 제출과 데이터 변경을 컴포넌트 흐름 안에 두되 검증, 권한, 재검증 위치를 함께 정합니다.
Edge Functions 제약 점검
가까운 지역에서 빠르게 실행하는 대신 Node API, 패키지, 네트워크 제한을 배포 전에 확인합니다.
DB 연결 재사용 기준
서버리스 호출마다 새 연결을 만들지 않도록 풀링, 캐시, 제한 시간을 함께 설계합니다.
Node.js 런타임과 Edge Runtime은 제약이 다릅니다
Edge는 빠른 지역 실행에 강하지만 Node 전용 API나 일부 패키지 사용이 제한될 수 있습니다.
서버리스 구성
Server Actions폼 제출과 서버 변경 작업을 컴포넌트 흐름 안에서
처리합니다.
Edge Functions가까운 지역에서 빠르게 실행하지만 런타임 제약을 확인해야
합니다.
DB 연결서버리스 환경에서는 연결 재사용과 제한 시간을 함께
고려합니다.