-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
ErrorDecoder랑 FallbackFactory
23.01.12 09:37 작성 조회수 584
0
안녕하세요.
강의를 듣다가 궁금한 점이 생겨서 질문 드립니다.
ErrorDecoder랑 FallbackFactory의 차이점이 무엇인지 알 수 있을까요?
FallbackFactory는 어떤 에러가 발생하든 개발자가 설정한 값으로 리턴만 해주는 것이고
ErrorDecoder는 에러를 상세를 관리할 수 있어서 에러에 따라서 원하는 값으로 리턴해주는 것일까요?
보통 둘이 같이 사용하나요? 아니면 따로 따로 사용하나요?
답변을 작성해보세요.
0
Dowon Lee
지식공유자2023.01.26
안녕하세요, 이도원입니다.
ErrorDecoder, FallbackFactory 모두 에러를 핸들링 하기 위해 사용 될 수 있습니다.
Fallback, FallbackFactory는 Circuit breaker 패턴에 맞춰 구현되었으며, netflix hystrix에서 구현되어져서 사용되고 있습니다. Fallback은 간단하게 사용하실 수 있지만, http 상태 코드를 catch할 수 없으며, 오류가 발생되었을 때 해당 메소드로 사용자의 요청을 직접 전달하지 않고, 대체 코드를 실행하기 때문에, 원인을 직접 catch 할 수 없습니다. 따라서, 일반적으로는 FallbackFactory를 구현하여 예외를 핸들링 합니다. ErrorDecoder는 Feign-core에서 사용되기 시작했으며, 상태 코드가 2xx 범위에 없을 때, Http 응답을 제어하기 위해 @Component로 등록 된 빈에 의해서 예외를 핸들링할 수 있습니다.
질문하신 내용처럼, 2개의 구현방법을 모두 사용하셔도 상관없지만, 일반적인 예외 핸들링과 자세한 메소드 및 상태 코드의 제어 유무에 따라 방법을 나누셔도 좋을 것 같습니다.
감사합니다.
답변 1