工作纪实_18-微服务Feign调用出现的各种异常解决方案

feign调用问题汇总

1. feign调用微服务get请求提示post not supported

  1. fein定义和controller接口的请求方法不一致[一定要都是get方法才行]
  2. 如果排除掉第一个问题,fein接口的Get方法接口,此时请求参数前面没有加上@RequestParam也会有此报错【我也不知道为什么,但就是这样解决的】

2.feign调用微服务超时

工作纪实_18-微服务Feign调用出现的各种异常解决方案_第1张图片
feign、ribbon的超时通用设置

#默认为10s
feign.client.config.default.connectTimeout = 10000
#默认为60s
feign.client.config.default.readTimeout = 60000
ribbon.ConnectTimeout = 10000
ribbon.ReadTimeout = 60000
ribbon.eager-load.enabled = true
feign.okhttp.enabled = true
feign.compression.request.enabled = false
feign.compression.response.enabled = false
feign.httpclient.max-connections = 1000
feign.httpclient.max-connections-per-route = 500

如果还是不行,出现hystrix方面的报错,再加上hystrix的超时即可

如果还是不行,出现服务器方面的报错,再把服务器的连接超时时候设置一下就可以

不管怎么解决问题,feign、ribbon的重试机制,能关闭掉就关闭掉!

你可能感兴趣的:(Spring,工作纪实)