SpringBoot 關(guān)于Feign的超時(shí)時(shí)間配置操作
Feign的超時(shí)時(shí)間配置
feign 時(shí)間設(shè)置
contextId
: 可以指定為某個(gè)接口進(jìn)行單獨(dú)的超時(shí)設(shè)置
@FeignClient(value = "user",contextId ="device") public interface DeviceFeignService { @RequestMapping(value = { "/deviceId" }) JsonResult<Device> getByDeviceId(@RequestParam("deviceId") final Long deviceId); }
feign: client: config: #default代表所有服務(wù) default: #feign客戶端建立連接超時(shí)時(shí)間 connect-timeout: 10000 #feign客戶端建立連接后讀取資源超時(shí)時(shí)間 read-timeout: 20000 #而service-test表示當(dāng)調(diào)用service-test這個(gè)服務(wù)時(shí),用下面的配置 device: connect-timeout: 10000 read-timeout: 20000
Feign調(diào)用問(wèn)題 \ 超時(shí)
1、項(xiàng)目結(jié)構(gòu)
每個(gè)微服務(wù)是provider情況下有一個(gè)client模塊(里面含有定義好的feignclient 接口) 專門打包出去給其他微服務(wù)消費(fèi)
這樣的話 其他需要調(diào)用的微服務(wù)只要把這個(gè)client jar包引入即可,
2、在其他微服務(wù)中 引入clientXX.jar
這時(shí)候有一個(gè)坑, 就是 @EnableFeignClients這個(gè)注解默認(rèn)是只掃描項(xiàng)目啟動(dòng)application下的包 如果不同項(xiàng)目可能包路徑不一致, 所以@EnableFeignClients得指定你的client.jar里面的路徑 或者兩個(gè)項(xiàng)目中 共同的頂級(jí)路徑 例如com.XX.cloud 同一個(gè)公司內(nèi)部 頂層包結(jié)構(gòu)應(yīng)該是一致的
3、feign調(diào)用超時(shí)
默認(rèn)feign調(diào)用超時(shí)是1000毫秒的 有斷點(diǎn)就肯定超時(shí)
需要加上以下配置
feign.hystrix.enabled=true #feign調(diào)用默認(rèn)是1000毫秒=1秒 應(yīng)該設(shè)置成更長(zhǎng)時(shí)間1000 * 60 * 5 = 5分鐘 add by six-vision hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=300000 hystrix.command.default.circuitBreaker.sleepWindowInMilliseconds=300000 hystrix.command.default.circuitBreaker.forceClosed=true #hystrix.command.default.execution.timeout.enabled=false #請(qǐng)求處理的超時(shí)時(shí)間 add by six-vision ribbon.ReadTimeout=300000 ribbon.SocketTimeout=300000 #請(qǐng)求連接的超時(shí)時(shí)間 add by six-vision ribbon.ConnectTimeout: 30000
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring事務(wù)框架之TransactionDefinition源碼解析
這篇文章主要為大家介紹了Spring事務(wù)框架之TransactionDefinition源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08SpringBoot使用Graylog日志收集的實(shí)現(xiàn)示例
Graylog是一個(gè)生產(chǎn)級(jí)別的日志收集系統(tǒng),集成Mongo和Elasticsearch進(jìn)行日志收集,這篇文章主要介紹了SpringBoot使用Graylog日志收集的實(shí)現(xiàn)示例,感興趣的小伙伴們可以參考一下2019-04-04Spring3.1.1+MyBatis3.1.1的增、刪、查、改以及分頁(yè)和事務(wù)管理
這篇文章主要介紹了Spring3.1.1+MyBatis3.1.1的增、刪、查、改以及分頁(yè)和事務(wù)管理的相關(guān)資料,需要的朋友可以參考下2016-01-01Java 時(shí)間日期詳細(xì)介紹及實(shí)例
這篇文章主要介紹了Java 時(shí)間日期詳細(xì)介紹及實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-01-01