장애가 발생하는 서비스에 반복적인 호출이 되지 못하게 차단
특정 서비스가 정상적으로 동작하지 않을 경우에 다른 기능으로 대체 수행 -> 장애 회피이를 구현하기 위해 Resilience4J 라이브러리를 추가한다.현재까지는 error decoder를 사용하였지만 이를 circuitbreaker를 사용하게 바꾸자.다음으론 circuitbreaker를 위한 설정 파일을 생성한다.
스프링 부트 애플리케이션을 Zipkin과 연동
요청 값에 따른 Trace ID, Span ID 부여
Trace와 Span Ids를 로그에 추가 가능Servlet filterrest templatescheduled actionsmessage channelsfeign client
curl -sSL <https://zipkin.io/quickstart.sh> | bash -s
java -jar zipkin.jar
를 터미널에 입력하여 zipkin을 설치하고 실행할 수 있다.
http://127.0.0.1:9411/zipkin/ 에 접속하여
확인할 수 있다.
그렇다면 이제 지금까지 만든 microservice에 zipkin을 사용할 수 있도록 설정을 해보자.
다음과 같이 user-service와 order-service에 설정을 추가하자.