본문 바로가기

MSA/ServiceMesh

[Circuit Breaker] Spring Cloud resilience4j

참조 :

2) Route설정에 Circuit Breaker 정의 및 Circuit Breaker만들기
 
Circuit Breaker는 어떤 설정이 필요한지 생각해 봅시다. 가장 기본적으로 '{...}'안의 설정들이 필요할겁니다.
{최소요청횟수} 이후 {timeout}시간 기준으로 {최근 통계시간}동안 또는 {최근 통계건수}로 평가했을때,
{실패율}이상이 되면 Circuit Breaker가 Open되고, {Circuit Breaker지속시간}동안 유지된다.
유지되는 동안 Backend service를 호출하지 않는다.

 

그 시간이 경과하면 Circuit Breaker는 Half Open상태가 되고, Backend service를 1번 호출한다.
 
요청이 성공하면 Circuit Breaker는 Close되고, 실패하면 다시 Open된다.