我的GitHub地址:https://github.com/leebingbin/git
在使用Spring Cloud的過程當中,不免會遇到一些問題。因此對Spring Cloud的經常使用問題作一些總結。github
關於「Eureka常見問題」能夠參考,我以前的文章《微服務開發架構——Spring Cloud常見問題與總結<一>Eureka常見問題》:http://www.javashuo.com/article/p-fbmbfvua-w.html架構
在某些場景下,Feign 或 Ribbon 整合 Hystrix 後,會出現首次調用失敗的問題。微服務
Hystrix 默認的超時時間是1秒,若是在1秒內得不到響應,就會進入 fallback 邏輯。因爲 Spring 的懶加載機制,首次請求每每會比較慢,所以在某些機器(特別是配置低的機子[Tips:爲何還要用舊瓶裝新酒呢?軟件都更新了,硬件也要跟上啊!^_^])上,首次請求須要的時間可能就會大於1秒。spa
有不少方式解決該問題:.net
1) 方法一:延長 Hystrix 的超時時間,示例以下code
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds:5000
該配置讓 Hystrix 的超時時間改成5秒。xml
2) 方法二:禁用 Hystrix 的超時,示例以下blog
hystrix.command.default.execution.timeout.enabled: false
3) 方法三:對於 Feign , 還能夠爲 Feign 禁用 Hystrix , 示例以下ip
feign.hystrix.enabled: false
這樣便可爲 Feign 全局禁用 Hystrix 支持。但該方式比較極端,通常不建議使用。
本文爲博主原創文章,轉載請註明出處!