피드로 돌아가기
Scaling Supabase Edge Functions Past the 50-Function Cap: Hub-and-Action Architecture
Dev.toDev.to
Backend

Hub-and-Action 아키텍처로 Edge Function 수 99개에서 16개로 최적화

Scaling Supabase Edge Functions Past the 50-Function Cap: Hub-and-Action Architecture

kanta13jp12026년 4월 17일5intermediate

Context

Supabase 무료 및 Pro 티어의 Edge Function 최대 생성 제한인 50개 캡으로 인한 배포 불가 상황 발생. 서비스 확장으로 인해 기능별 독립 함수를 생성하는 기존 방식이 물리적 한계에 도달한 구조적 병목 지점 확인.

Technical Solution

  • 단일 Edge Function이 요청 바디의 action 파라미터를 기반으로 내부 핸들러를 분기하는 Hub Pattern 도입
  • 개별 함수마다 중복 설정하던 CORS 핸들링을 Hub 진입점에서 통합 처리하여 설정 오버헤드 제거
  • JWT 인증이 불필요한 Cron Job 요청을 위해 NO_AUTH_ACTIONS 화이트리스트 기반의 인증 바이패스 로직 설계
  • Client-side의 하드코딩된 호출 경로를 단일 진입점으로 추상화한 Centralized Hub Caller 래퍼 클래스 구현
  • 핸들러별 파일 분리 및 모듈화 임포트를 통한 단일 파일 비대화 방지 및 유지보수성 확보
  • 공유 의존성에 따른 기능 그룹화를 통해 Bundle Size 증가로 인한 Cold Start 지연 최소화

Impact

  • 배포된 Edge Function 수 99개에서 16개로 약 83% 감소
  • 기능 삭제 없는 전체 서비스 가용성 유지 및 402 에러 완전 해결

1. 클라우드 플랫폼의 물리적 Resource Cap 도달 시 내부 라우팅 기반의 가상 분기 구조 검토

2. 공통 미들웨어(CORS, Auth) 설정이 반복될 경우 통합 진입점(Gateway) 설계로 관리 포인트 일원화

3. Hub 구조 도입 시 공유 타임아웃(30초) 및 단일 장애점(SPOF) 위험을 고려하여 무거운 작업은 독립 함수로 유지

4. 클라이언트 호출부의 유연성을 위해 API Endpoint를 추상화한 SDK/Wrapper 계층 구축

원문 읽기