잡다구리
resilience4j: CircuitBreaker configuration 간단 정리
Growing!
2022. 8. 18. 00:22
CircuitBreaker의 설정 항목들에 대한 간단 정리이다.
나머지 항목은 레퍼런스 문서를 참고하자 - https://resilience4j.readme.io/docs/circuitbreaker#create-and-configure-a-circuitbreaker
resilience4j:
circuitbreaker:
instances:
licenseService: # circuit breaker 이름
# health endpoint 를 통해 configuration 정보를 노출할지 여부. default false.
registerHealthIndicator: true
# 슬라이딩 윈도우의 타입(COUNT_BASED or TIME_BASED). default COUNT_BASED.
# 슬라이딩 윈도우는 CLOSED 상태에서의 호출 결과를 기록하는데 사용된다.
# TIME_BASED 인경우에는 마지막 슬라이딩 윈도우 사이즈 만큼의 호출에 대한 집계를 저장한다.
slidingWindowType: COUNT_BASED
# 슬라이딩 윈도우 사이즈의 크기. default 100. COUNT_BASED 인 경우에는 갯수, TIME_BASED 인 경우에는 초(second).
slidingWindowSize: 20
# 호출의 실패율이나 느린 호출 비율을 판단하기 위해 필요한 최소한의 호출 수. default 100. 호출이 이 숫자보다 작은 시점에는 판단하지 않고 CLOSED 상태를 유지한다.
mininumNumberOfCalls: 20
# 호출 실패율의 임계치(percentage). default 50. 호출 실패율이 임계치 이상이면 OPEN 상태로 전이된다.
failureRateThreshold: 50
# 느린 호출 비율의 임계치(percentage). default 100. 느린 호출 비율이 임계치 이상이면 OPEN 상태로 전이된다.
slowCallRateThreshold: 50
# 느린 호출로 간주되는 시간(ms)의 임계치. default 60000.
slowCallDurationThreshold: 2000
# OPEN 상태에서 이 시간(ms)이 지나야만 HALF_OPEN 상태로 전이된다. default 60000.
waitDurationInOpenStage: 60000
# HALF_OPEN 상태에서 상황 판단을 위해 허용할 호출 횟수. default 10
permittedNumberOfCallsInHalfOpenState: 10