![[코드가 환경을 모르는 구조 5/7] Rewrite Host — 공간 축을 교체한다](https://cdn.sanity.io/images/v31psllp/production/880cbd1201bc94d8f408147dcd135aef78e683b4-1684x1030.png)
아키텍처
[코드가 환경을 모르는 구조 5/7] Rewrite Host — 공간 축을 교체한다
두줄요약
MSA 환경에서 전체 시스템을 띄우지 않고 수정 중인 서비스만 로컬로 교체하는 Rewrite Host를 소개했습니다. 디버그 헤더로 라우팅을 바꾸고, 응답 헤더로 적용 여부를 알려주는 방식입니다.
핵심 내용
- MSA 환경에서 로컬 개발이 어려워지는 이유와, 전체 인프라를 띄우지 않고도 수정 중인 서비스만 로컬로 바꿔 끼우는 Rewrite Host 소개
- Spring Cloud Gateway의 디버그 헤더 기반 라우팅 치환으로, 원래 목적지의 scheme/host/port만 교체하고 나머지 요청 정보는 유지
- 응답 헤더로 적용 실패 사유를 돌려줘 디버깅 가능성을 높이고, 마이크로 프론트엔드에도 같은 방식의 라우팅 치환 개념을 적용
적용해볼 점
- 디버그 헤더를 스위치와 매핑으로 분리해 부분 교체형 개발 흐름 구성
- 라우팅 결정 지점을 한 곳에 모아 Adapter 방식으로 교체 가능하게 설계
- 서비스 간 호출까지 확장하려면 디버그 컨텍스트 전파 또는 Service Discovery 연동 검토
