3

Jetzt benutze ich mit Hystrix vorgetäuscht, es stellt sich heraus, dass Circuit in Open-Status wird, wenn Fallback-Methode 20 Mal in 5s aufrufen. Wie kann ich diese Regel ändern? Lassen Sie beispielsweise den Status "Stromkreis" offen, wenn die Rückfallmethode 50 Mal in 5 Sekunden aufgerufen wird, oder durch die Rückfall-Rückrufrate. Hier ist mein Haupt-Java-Code.Spring Cloud Config Feign Fallback (CircuitBreaker) Regel

ConsumerApplication.java

@SpringBootApplication 
@EnableDiscoveryClient 
@EnableFeignClients 
@EnableCircuitBreaker 
@RibbonClients({@RibbonClient(name = "cloud-provider", configuration = CloudProviderConfiguration.class)}) 
public class ConsumerApplication { 
    public static void main(String[] args) { 
     SpringApplication.run(ConsumerApplication.class, args); 
    } 
} 

UserFeignClient.java

@FeignClient(name = "cloud-provider", fallback = UserFeignClient.HystrixClientFallback.class) 
public interface UserFeignClient { 
    @RequestMapping("/{id}") 
    BaseResponse findByIdFeign(@RequestParam("id") Long id); 

    @RequestMapping("/add") 
    BaseResponse addUserFeign(UserVo userVo); 

    @Component 
    class HystrixClientFallback implements UserFeignClient { 
     private static final Logger LOGGER = LoggerFactory.getLogger(HystrixClientFallback.class); 

     @Override 
     public BaseResponse findByIdFeign(@RequestParam("id") Long id) { 
      BaseResponse response = new BaseResponse(); 
      response.setMessage("disable!!!!"); 
      return response; 
     } 

     @Override 
     public BaseResponse addUserFeign(UserVo userVo) { 
      BaseResponse response = new BaseResponse(); 
      response.setMessage("disable"); 
      return response; 
     } 
    } 
} 

Antwort

4

Die Konfigurationsparameter werden hier beschrieben https://github.com/Netflix/Hystrix/wiki/Configuration

hystrix.command.default.circuitBreaker.sleepWindowInMilliseconds die 5-Sekunden-Fenster ändern Sie sehen.

hystrix.command.default.circuitBreaker.requestVolumeThreshold ist standardmäßig auf 20 Anfragen eingestellt.

+0

Danke! Es klappt. –

+0

@spencergibb Diese Eigenschaften gelten für alle feign hystrix Clients richtig? Was ist, wenn ich die Hystrix-Eigenschaft für bestimmte Pseudo-Clients ändern möchte? – codingsplash

Verwandte Themen