1. https://martinfowler.com/bliki/CircuitBreaker.html 참조
CircuitBreaker Closed는 다른 서비스가 정상적이라 서킷 브레이커가 작동을 하지 않는 상태
CircuitBreaker Open은 다른 서비스가 비 정상적이라 서킷 브레이커가 작동을 하는 상태
2. Netflix EOS 또는 유지보수 정체에 따른에 따른 모듈의 대체
Zuul -> Spring Cloud Gateway
Ribbon -> Spring Cloud Loadbalancer
Hystrix -> Resilience4j
Hystrix Dashboard / Turbine -> Micrometer + Monitoring System(Prometheus, Grafana)
3. Resilience4j
https://resilience4j.readme.io/docs/getting-started
Introduction
Resilience4j is a lightweight fault tolerance library designed for functional programming. Resilience4j provides higher-order functions (decorators) to enhance any functional interface, lambda expression or method reference with a Circuit Breaker, Rate Lim
resilience4j.readme.io
4. 장애상태의 micro service 연출(order-ms shutdown)
5. Resilience4j 적용
5-1. dependency 추가
5-2. UserServiceImpl에 주입후 재기동
5-3. 서비스 호출후 확인
6. CircuitBreaker Config 적용
'MSA' 카테고리의 다른 글
39. Spring Cloud Sleuth와 Zipkin을 이용한 서비스 분산추적 적용 (0) | 2022.12.15 |
---|---|
38. Microservice의 분산추적 Zipkin (0) | 2022.12.14 |
36. micro service에 외부 RDB사용 및 Kafka Producer 만들기 (0) | 2022.12.13 |
35. micro service에 Kafka 적용 #3 (Test) (0) | 2022.12.13 |
34. micro service에 Kafka 적용 #2 (producer) (0) | 2022.12.13 |