服务调用与服务容错保护
SpringCloud Alibaba Feign
Feign
Feign是Netflix开源的声明式HTTP客户端。
首先加入spring-cloud-start-openfeign
依赖,并在主类上加入 @EnableFeignClients 注解。为需要调用的微服务创建接口,在上面加上 @FeignClient(name = “serviceId”)。
Feign通过整合Ribbon实现了负载均衡。
Feign的组成
Feign细粒度配置自定义(日志级别)
java代码配置
配置专属的日志信息,就将配置在对应的ClientFeign中
//要配置feign的日志信息,就需要配置configuration类
@FeignClient(name = "serviceId" , configuration = feignConfiuration.class)
public interface feignClient{
@GetMapping("/xxx")
T findxxx(String param1);
}
//这个类如果加了@Configuration,就必须在主类之外的包中编写
//会涉及到父子上下文覆盖的问题
//会将所有的Feign全部都打印出来
public class feignConfiuration