(삼십 오) Hystrix의 봄 구름 마이크로 서비스 아키텍처 b2b2c 전자 상거래 플랫폼 -Feign 지원의 자바 버전

클래스 경로에서 Hystrix 경우, 기본적으로 모든 방법은 회로 차단기의 척하기를 포함한다. 사용하는 com.netflix.hystrix.HystrixCommand를 돌려, 당신이 반응 모드로 사용할 수 있습니다 (전화 .toObservable 또는 비동기 .observe () 또는 (.queue ())). Hystrix 지원의 척하기를 사용하지 않으려면, 거짓 = feign.hystrix.enable 설정합니다.

예를 들어, Hystrix 각 클라이언트에서 지원 비활성화합니다 Feign.Builder을 만들고 범위는 "프로토 타입"으로 설정하려면 :

@Configuration
public class FooConfiguration {
    @Bean
    @Scope("prototype")
    public Feign.Builder feignBuilder() {
        return Feign.builder();
    }
}

척하기 Hystrix 대체 콘텐츠 (고장 대체)

오류 라인은 기본 코드 실행 경로가있을 때 Hystrix는 클래스 이름의 롤백을 달성하기 위해 속성 세트 @FeignClient 대체를 제공하기 위해 롤백을 사용, 대체의 개념을 지원하지 못했습니다.

클라이언트 인터페이스를 구현하는 구현 클래스를 작성한다

@Component
public class MenuClientFallback implements MenuClient {

    @Override
    public ResponseResult saveOrUpdateMenu(MenuModel menuModel) {
        System.out.println("调用服务失败");
        return new ResponseResult("-1", "调用服务失败");
    }

}

@FeignClient 노트를 더한 값이 대체 속성, 대체 속성은 구현 클래스의 .class입니다

@FeignClient(name = "WishfulCloud-Authority-Service", fallback=MenuClientFallback.class)
public interface MenuClient {

    @RequestMapping(value = "/menu/saveOrUpdateMenu", method = RequestMethod.POST)
    public ResponseResult saveOrUpdateMenu(@RequestBody MenuModel menuModel);

}

fallbackFactory

당신이 원인 롤백 트리거에 액세스해야하는 경우 @FeginClient에서 fallbackFactory 속성을 사용할 수 있습니다

추천

출처blog.csdn.net/vvx0206/article/details/93846095