
[MSA] MSA 환경에서 장애 전파를 막기 위한 전략 (Tracing, Circuit Breaker, Rate Limit)
·
Distributed System
🧐 들어가기전모놀리틱 아키텍처에서 벗어나 서비스 단위로 쪼개진 마이크로 서비스 아키텍처에 들어서게 되면 모놀리틱의 단점을 보완할 수 있다. 모놀리틱은 모든 기능이 하나의 application에 집중 되어 있기 때문에 하나의 기능에서 발생한 장애가 서비스 전체로 이어질 여지가 있다. 반면 MSA 환경은 서비스들 간의 독립성이 유지되기에 장애를 격리 시킬 수 있다. 하지만 과연 정말 장애를 격리시킬 수 있을까에 대한 고민을 해봐야한다. 위와 같이 클라이언트가 서비스 A를 통해서 요청과 응답을 받고 서비스 A는 client의 요청을 서비스 B로 전달해 B로부터 온 응답을 client에게 전해준다고 가정하자. 그렇다면 위에서 만약 서비스 B의 장애가 발생하면 어떻게 될까?서비스 B에 장애가 발생한다면 생기는 ..