服务降级Hystrix

发布时间:2024年01月21日

服务降级断路器Hystrix
微服务中,各台服务之间调用关系很复杂,为了避免由于某一台服务出错而导致其他的服务压力过大,整个请求响应时间太长,对用户体验很不好,以及发生级联故障,所有我们有了这个断路器,
服务熔断:

 @HystrixCommand(fallbackMethod = "paymentCircuitBreaker_fallback",commandProperties = {
        @HystrixProperty(name = "circuitBreaker.enabled",value = "true"), //是否开启断路器
        @HystrixProperty(name = "circuitBreaker.requestVolumeThreshold",value = "10"),//请求次数
        @HystrixProperty(name = "circuitBreaker.sleepWindowInMilliseconds",value = "10000"),//时间窗口期
        @HystrixProperty(name = "circuitBreaker.errorThresholdPercentage",value = "60"),//失败率达到多少后跳闸
    })

一个请求在我们规定的时间内,失败的请求数量去比上这段时间内总的请求量,当他们的百分比大于我们规定的百分比后,就会触发服务熔断进而进行服务降级。
服务降级:

@HystrixCommand(fallbackMethod = "paymentTimeOutFallbackMethod",commandProperties = {
            @HystrixProperty(name = "execution.isolation.thread.timeoutInMilliseconds",value = "15000")
    })

一个请求进入到我们这个接口的时候,超过我们规定的时间还未处理完是,就会服务降级,
服务熔断会导致服务降级,进而执行我们执行的兜底方法,fallbackMethod,及时响应用户以及保证其他服务的安全。我们可以这个通过fallback方法返回定制的响应。

文章来源:https://blog.csdn.net/weixin_43761434/article/details/135732096
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。