이해에서, Hystrix 폴백 논리는 요청 시간 초과, 100 % 용량에서 실행중인 스레드 풀 또는 종속성 예외 예외와 같은 특정 조건이 발생할 때 트리거됩니다. 이 3 가지 요인 외에 413 (페이로드가 너무 큼)과 같은 특정 HTTP 오류 코드와 같은 오류로 간주되는 더 많은 조건을 추가 할 수 있습니까?Hystrix에서 폴백을 트리거하는 사용자 정의 오류 조건
0
A
답변
0
Hystrix의 대체 방법은 다음의 조건 하에서 호출 될
- 개방 회로
- 세마포어/스레드 풀 거부
- 실행 (HystrixBadRequestException 제외하여 법에 의해 발생 예외)
- 실패 메소드 시간 초과 (히스토리 타임 아웃)
부분 만 t는 사용자 코드와 직접 관련이 있으며 실행이 실패합니다.
이 경우 run()
메서드로 throw 된 예외가 있으면 폴백이 트리거됩니다. 주석을 통해 HystrixCommand 및 Hystrix Javanica를 통해 순수 Hystrix와 동일합니다. 당신이 HTTP 413 상태 코드 또한 대체를 트리거 할 경우 모두가 당신의 방법 내부의 예외를 던지고하는, 따라서 HystrixBadRequestException
트리거되지 않습니다
단 하나의 예외입니다.
Spring Cloud Feign과 같은 Hystrix 지원이 내장 된 라이브러리를 사용하는 경우 라이브러리에 필요한 것을 구현해야합니다. Spring Cloud Feign의 경우 자신 만의 ErrorDecoder
을 구현할 수 있습니다. 기본 오류 디코더는 모든 4XX, 5XX 오류에 대해 폴백을 트리거합니다. 413을 제외한 모든 대체 4XX 오류를 트리거하지 않으려면 HystrixBadRequestException
을 그 안에 넣을 수 있습니다.