美文网首页
HyStrilx服务熔断降级方式

HyStrilx服务熔断降级方式

作者: 昨日已逝去 | 来源:发表于2019-02-27 09:39 被阅读0次

HyStrilx服务熔断降级方式

原文在github,有些相对路径连接不能跳转,如想看原文项目地址 spingboot2.1.3加springcloud G版本,如果觉的不错给个star 谢谢!

HyStrilx简介

断路器模式源于Martin Fowler的Circuit Breaker一文。“断路器”本身是一种开关装置,用于在电路上保护线路过载,当线路中有电器发生短路时,“断路器”能够及时的切断故障电路,
防止发生过载、发热、甚至起火等严重后果。

hystrilx不单独使用,此组件一般和ribbonfeign结合使用

前期准备工作

HyStrilx服务搭建(结合ribbon)

  • maven依赖
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>
  • application.properties配置
spring.application.name=spring-cloud-hystrix
server.port=8005
eureka.client.serviceUrl.defaultZone=http://localhost:8000/eureka/
  • 启动类案例
@SpringBootApplication
@EnableCircuitBreaker
@EnableEurekaClient
public class SpringCloudHystrixApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringCloudHystrixApplication.class, args);
    }

    @Bean
    @LoadBalanced
    RestTemplate restTemplate() {
        return new RestTemplate();
    }

}

启动项目spring-cloud-hystrix

访问 http://localhost:8005/ribbon ,可以从服务a控制台看到调用成功。

关闭服务spring-cloud-clientA
再次访问 http://localhost:8005/ribbon ,返回结果是被熔断降级后的回调。

Feign整合

feign自带hystrix,所以不需要添加,任何依赖,只需要配置fallback属性即可。

  • 使用@FeignClient注解中的fallback属性指定回调类
@FeignClient(value = "eureka-client-a",fallback = ConsumerServiceHystrix.class)
public interface ConsumerService {

    @GetMapping(value = "hello/{name}")
    String hello(@PathVariable("name") String name);

}

创建回调类ConsumerServiceHystrix

@Component
public class ConsumerServiceHystrix implements ConsumerService{
    @Override
    public String hello(String name) {
        return "error";
    }
}

相关文章

  • HyStrilx服务熔断降级方式

    HyStrilx服务熔断降级方式 原文在github,有些相对路径连接不能跳转,如想看原文项目地址 spingbo...

  • SpringCloud-笔记10-Hystrix防雪崩利器

    服务降级 依赖隔离 服务熔断-监控(Hystrix Dashboard) 服务熔断 Hystrix Dashboard

  • 服务降级熔断 - 熔断降级

    Hystrix实现原理-熔断机制 熔断是参考电路而产生的一种保护性机制,即系统中如果存在某个服务失败率过高时,将开...

  • 什么是服务熔断?

    服务熔断会触发服务降级释意:服务熔断,类比保险丝达到最大服务访问后,直接拒绝访问,拉闸停电,然后调用服务降级方法并...

  • SpringCloud之Hystrix、Gateway、Conf

    1. SpringCloud Hystrix(服务熔断与降级组件 / 服务容错与保护组件) 示例(服务端降级) 示...

  • 服务熔断--服务降级

    微服务架构的特点就是:“一解释就懂,一问就不知,一讨论就吵架” 服务熔断:一般是指软件系统中,由于某些原因使得服务...

  • 微服务 11: Sentinel的微服务 限流与 熔断降级(文末

    1:微服务限流? 2:什么是熔断降级? 3:需要进行熔断的服务的Pom文件(consumer 或者 provid...

  • Hystrix 使用说明

    一、简介: Hystrix是用于分布式场景下服务熔断、降级的开源Java库,它的主要作用有:依赖隔离,熔断,降级和...

  • 基本概念

    限流保护 – 目标:保护服务提供方不被过于频繁的调用压垮。– 方式:过于频繁的调用直接拒绝。 降级保护(熔断) –...

  • 微服务集成hystrix

    1. spring cloud集成hystrix 定义 1 服务降级 2 服务熔断 3 hystrix das...

网友评论

      本文标题:HyStrilx服务熔断降级方式

      本文链接:https://www.haomeiwen.com/subject/urhxuqtx.html