피드로 돌아가기
Dev.toBackend
원문 읽기
구독형 AI 쿼터를 API 풀로 변환하는 Go 기반 통합 게이트웨이 설계
Open Source Project (No.73): Sub2API - All-in-One Claude/OpenAI/Gemini Subscription-to-API Relay
AI 요약
Context
개별 AI 구독 서비스의 분산된 쿼터와 사용 제한으로 인한 자원 낭비 발생. 단순 Reverse Proxy로는 애플리케이션 계층의 Session 상태 유지와 정교한 쿼터 관리가 불가능한 한계 존재.
Technical Solution
- Go(Gin, Ent) 기반의 고성능 API Gateway를 통한 다중 계정 리소스 풀링 구조 설계
- Header의 session_id를 활용한 Sticky Session 구현으로 Claude Code 등 컨텍스트 연속성이 필요한 도구의 세션 유지 보장
- Rate Limit 도달 시 스케줄러가 자동으로 가용 계정으로 트래픽을 우회시키는 로드 밸런싱 로직 적용
- PostgreSQL과 Redis를 조합하여 Token 레벨의 정밀한 사용량 추적 및 실시간 상태 동기화 처리
- 결제 시스템(Stripe, Alipay 등) 내장으로 리소스 배분부터 과금까지 이어지는 Closed-loop 파이프라인 구축
Key Takeaway
상태 저장(Stateful) 특성을 가진 외부 서비스의 구독 모델을 무상태(Stateless) API 형태로 추상화하기 위해 세션 고정 전략과 리소스 풀링 계층을 도입한 설계 사례
실천 포인트
- L7 계층의 세션 유지가 필요한 프록시 설계 시 Custom Header를 활용한 Sticky Session 적용 검토 - 외부 API의 Rate Limit 대응을 위해 단일 계정이 아닌 Resource Pool 기반의 Fail-over 스케줄링 도입 - 정밀한 과금 체계 구축을 위해 Redis 기반의 실시간 카운팅과 PostgreSQL의 영구 기록 분리 설계