[Resilience4J] MSA 환경에서의 장애 방어 전략
1. CircuitBreaker가 필요한 이유개발을 하다 보면 외부 API를 호출해야 하는 경우가 있다. 특히나 전체적인 시스템 구성이 MSA(Microservice Architecture)로 되어 있다면 다른 서비스를 호출하는 경우가 매우 빈번하다. 문제는 서버들에 장애가 발생할 수 있다는 점인데, 호출한 다른 서비스에 장애가 발생했다면 장애가 전파되어, 해당 서비스까지 문제가 발생할 수 있다. 또한 장애가 발생한 서버에 계속 요청을 보내는 것은 장애 복구를 힘들게 만든다. 예를 들어, 사용자의 대시보드에서 한 번의 요청으로 사용자의 여러 정보를 조회해 한 화면에 보여주어야 하는 상황을 생각해보자. 이 대시보드는 아래와 같이 각기 다른 서비스에서 데이터를 가져와야 한다.사용자 정보 서비스: 사용자..