
129
3
장
모놀리스 분해
3.6.23.6.2
병렬 실행 병렬 실행
기존에 시도 및 테스트된 애플리케이션 아키텍처에서 제공하는 기능에서 멋지고 새로운 마이
크로서비스 아키텍처의 기능으로 전환할 때, 특히 마이그레이션되는 기능이 조직에 중대한 경
우라면 다소 긴장될지도 모른다.
기존 시스템 동작을 위험에 빠뜨리지 않고 새로운 기능이 잘 작동하는지 확인하는 한 가지 방
법은 병렬 실행
parallel
run
패턴을 사용하는 것이다. 즉, 모놀리식 기능 구현과 새로운 마이크로서
비스 구현을 나란히 실행해 같은 요청을 제공하고 결과를 비교한다. 이 패턴은
8
.
6
.
5
절 ‘병렬
실행’에서 더 자세히 살펴본다.
3.6.33.6.3
기능 토글 기능 토글
기능 토글기능 토글
feature
toggle
은 제품 기능을 켜거나 끄고 아니면 기능에 대한
2
개의 다른 구현 사이를 오
가게 하는 메커니즘이다. 기능 토글은 일반적으로도 적용 가능성이 좋은 패턴이지만 마이크로
서비스 마이그레이션에서 특히 유용하다.
교살자 무화과 애플리케이션에서 설명했듯이 전환하는 동안 기존 기능을 모놀리스에 그대로
두는 경우가 많으며, 기능 버전(모놀리스 기능과 마이크로서비스 기능 ) 간에 전환하는 수단이
필요하다.
HTTP
프록시를 사용하는 교살자 무화과 패턴 예제에서는 프록시 레이어에서 기능
토글을 구현해