Hystrix
系统容错工具
降级
- 调用远程服务出错(宕机,500错,超时),可以降级执行当前服务中的一段代码,向客服端返回结果
- 快速失败
熔断 - 当访问量过大,出现大量失败,可以过热保护
- 限流
- 防止故障传播、雪崩效应
降级
1.hystrix依赖
2.启动类添加注解@EnableCircuitBreaker
3.添加降级代码
//当调用远程服务失败,跳转到指定方法,执行降级代码
@HystrixCommand(fallbackMethod="降级方法")
Actuator
声明式客户端接口
只需要声明一个抽象接口,就可以通过接口做远程调用,不需要再使用RestTemplate
// 调用远程的商品服务,获取订单的商品列表
//
//
//
@FeignClient(name="item-service")
public interface ItemClient(){
@GetMapping("/{orderId}")
JsonResult<List<Item>> getItems(@PathVariable String orderId);
}
使用@GetMapping("/{orderId}"),指定的是向远程服务调用的路径