본문 바로가기

MicroService Architecture/Microservice Design Pattern

제어 루프 (Control loop)

제어 루프 패턴은 다음과 같은 문제점, 솔루션, 해결책의 필요 조건이 있다.

 

문제점

 

다수의 마이크로서비스 인스턴스가 여러 서버에 분산돼 있는 시스템 환경에선 중단되거나 지연된 마이크로서비스 인스턴스를 수동으로 감지하고 대처하는 것이 어렵다.

 

해결책

 

시스템 환경의 상태를 관찰하는 새 컴포넌트(제어 루프Control loop))를 시스템 환경에 추가한다. 이 컴포넌트는 운영자가 지정한 상태와 실제 상태를 지속적으로 관찰하며, 두 상태가 다른 경우에는 현재 상태가 지정된 상태와 일치하도록 조치를 취한다.

 

해결책의 필요 조건

 

구현참고: 컨테이너를 기반으로 하는 환경에선 쿠버네티스와 같은 컨테이너 오케스트레이터로 이 패턴을 구현한다.