feign使用

1,190 阅读1分钟

feign是对ribbon进行了包装。
注意:返回结果的dto对象需要无参构造函数,否则报错


  1. 在启动类中添加@EnableFeignClients注解,表明启用feign客户端
  2. 在接口上添加注解@FeignClient(name="product-service"),表明这是一个feign客户端类接口

@FeignClient("product-service")
public interface ProductClientService {
	
	@GetMapping("/api/v1/product/queryProductByIds")
	public List<Product> queryProductByIds(@RequestParam List<Integer> ids);
	

}
  1. 设置超时时间
    默认readTimeout是60秒,但是默认Hystrix默认是1秒,所以超过1秒也会超时。
# 2个属性要同事设置,否则不生效,设置读取超时时间11秒
feign.client.config.default.connectTimeout=5000
feign.client.config.default.readTimeout=11000