Feign 集成 Hystrix
Feign 默认不启用 Hystrix, 不举荐启用 Hystrix(前面在剖析)
启用 Mystrix 根底配置:
1.Hystrix 起步依赖
2.yml 中配置启用 hystrix
feign.hystrix.enabled=true
3. 启动类增加注解@EnableCircuitBreaker
增加降级代码:
@FeignClient(name="item-service",fallback= 降级类.class)
public interface ItemClient(){@GetMapping("/{orderId}")
JsonResult<List<Item>> getItems(@PathVariable String orderId);
}
降级类须要实现申明式客户端接口, 在实现的形象办法中增加降级代码
降级类须要增加 @Component
注解
Feign 集成 Hystrix, 增加监控
1. 增加 actuator 依赖
2 裸露 hystrix.stream 监控端点
3. 查看监控日志
1. 重启 09
2. 拜访 http://localhost:3001/actuator/
订单中增加 feign, 调用商品和用户
1. 增加依赖
feign
hystrix
2.yml
feign.hystrix.enabled=true
m.e.w.e.i=hystrix.stream
3. 启动类注解
@EnableFeignClients
@EnableCircuitBreaker
Turbine
聚合 Hystrix 监控数据
连贯多台服务器, 抓取日志数据, 进行聚合,
交给仪表盘在同一个监控界面进行展示
搭建 Turbine 服务
1. 增加 Turbine 依赖
2.yml 配置
聚合的服务 id: order-service,aa,bb,cc
为聚合的监控数据命名: cluster-name=new String("abc")
3. 启动类增加注解 @EnableTurbine
音讯服务器
分布式系统中广泛应用音讯服务
音讯服务器:
rabbitmq
activemq
rocketmq
tubemq