SpringCloud(四)

Feign集成Hystrix

Feign默认不启用Hystrix,不推荐启用Hystrix

启用Hystrix基础配置:
1、Hystrix起步依赖
2、yml中配置启用Hystrix

feign.hystrix.enabled=true

3、启动类添加注解@EnableCircuitBreaker

添加降级代码:

@FeignClient(name="item-service",fallback=降级类.class)
public interface ItemClient{
    @GetMapping("/{orderId}")
    JsonResult> getItems(@PathVariable String orderId);
}

降级类需要实现声明式客户端接口,在实现的抽象方法中添加降级代码
降级类需要添加@Component注解

Feign集成Hystrix,添加监控

1、添加actuator依赖
2、暴露hystrix.stream监控端点
3、查看监控日志

1、重启09
2、访问http://localhost:3001/actuator

订单中添加Feign,调用商品和用户

1、添加依赖

* Feign
* Hystrix
* actuator

2、yml配置

* Feign.hystrix.enabled=true       #开启hystrix
* m.e.w.e.i=hystrix.stream         #暴露监控数据

3、启动类注解

* @EnableFeignClients
* @EnableCircuitBreaker

Turbine

聚合Hystrix监控数据
连接多态服务器,抓取日志数据,进行聚合
交给仪表盘在同一个监控界面进行展现

搭建Turbine服务
1、添加Turbine、eureka client依赖
2、yml配置

  • 聚合的服务id:order-service,aa,bb,cc(可以添加多个)
  • 为聚合的监控数据命名:cluster-name=new String("defaule")

3、启动类添加注解@EnableTurbine

消息服务器

分布式系统中广泛应用信息服务
消息服务器:

  • rebbitmq
  • activemq
  • rocketmq
  • tubemq

你可能感兴趣的:(java)