
아키텍처
Spring Cloud Gateway 기반의 통합 인증
두줄요약
Spring Cloud Gateway에서 통합 인증과 인가를 중앙화하고, 동적 토큰 스왑과 비동기 로그 처리로 보안을 정리했습니다. 또한 대기열 기반 트래픽 제어로 MSA 환경의 과부하와 자원 누수를 방지하는 구조를 구현했습니다.
구조와 흐름
- Spring Cloud Gateway를 MSA의 보안 관문으로 두고, 전역 인증/인가 필터와 큐 관리 필터를 게이트웨이 레이어에 집중
- 다중 벤더·레거시 연동을 위해 요청 토큰을 동적으로 치환하고, 백그라운드 로그 적재로 메인 라우팅 지연을 분리
- 라우트별 가용 용량을 데이터베이스로 제어하며, 초과 트래픽은 논블로킹 대기열과 라이프사이클 기반 정리로 관리
선택 이유
- 서비스별로 흩어진 보안 표준을 중앙화해 내부 서비스의 인증/인가 부담을 줄이기 위한 선택
- 인프라 설정에 종속되지 않고 라우트별 임계치와 대기 정책을 실시간 조정하기 위한 선택
성능/운영 포인트
- WebFlux와 Netty 기반 리액티브 필터로 이벤트 루프 점유를 최소화
- CompletableFuture와 리액티브 스트림을 연결해 대기 중에도 스레드 고갈을 방지
- doOnCancel, doFinally로 고스트 세션과 자원 누수를 방지
적용해볼 점
- 게이트웨이에서 인증, 인가, 로그, 트래픽 제어를 함께 다루는 중앙집중형 운영 구조 검토
- 트래픽 폭주 시 무조건 차단보다 대기열 기반 완충 전략 적용 검토

