最近在弄springcloud的時候發現在發送短信的時候zuul總是報錯,錯誤信息如下
com.netflix.zuul.exception.ZuulException:
at org.springframework.cloud.netflix.zuul.filters.post.SendErrorFilter.findZuulException(SendErrorFilter.java:118) ~[spring-cloud-netflix-zuul-2.1.2.RELEASE.jar:2.1.2.RELEASE]
at org.springframework.cloud.netflix.zuul.filters.post.SendErrorFilter.run(SendErrorFilter.java:78) ~[spring-cloud-netflix-zuul-2.1.2.RELEASE.jar:2.1.2.RELEASE]
at com.netflix.zuul.ZuulFilter.runFilter(ZuulFilter.java:117) [zuul-core-1.3.1.jar:1.3.1]
...

根據報錯信息可以知道,是zuul網關讀取超時了,應該是發送短信等待響應的時間過長導致的,於是我就去查文檔發現zuul可以設置超時時間

上圖的意思是:如果zuul配置轉發是用service-id,也就是基於服務名轉發,則配置超時時間通過ribbon.ReadTimeout和ribbon.SocketTimeout
如果zuul配置轉發是用url,則通過zuul.host.connect-timeout-millis和zuul.host.socket-timeout-millis配置超時
參考文檔地址:https://cloud.spring.io/spring-cloud-static/Greenwich.SR5/single/spring-cloud.html#_zuul_timeouts
