一、簡介
Spring Cloud Feign Client 是一個方便的宣告式 REST 客戶端,我們用它來實作微服務之間的通信,
在這個簡短的教程中,我們將展示如何設定自定義的 Feign 客戶端連接超時,包括全域和每個客戶端,
2. 默認值
Feign Client 是相當可配置的,
在超時方面,它允許我們配置讀取和連接超時,連接超時是 TCP 握手所需的時間,而讀取超時需要從套接字讀取資料,
默認情況下,連接超時和讀取超時分別為 10 秒和 60 秒,
3. 全域配置
我們可以通過 application.yml 檔案中設定的 feign.client.config.default 屬性設定應用程式中每個 Feign Client 的連接和讀取超時:
feign:
client:
config:
default:
connectTimeout: 60000
readTimeout: 10000
這些值表示發生超時之前的毫秒數,
4. 每個客戶端
也可以通過命名客戶端來為每個特定客戶端設定這些超時:
feign:
client:
config:
FooClient:
connectTimeout: 10000
readTimeout: 20000
而且,我們當然可以毫無問題地列出一個全域設定和每個客戶端的覆寫,
5. 單個方法
@PostMapping("/test")
void test(@RequestParam Long id, Request.Options options);
Request.Options options = new Request.Options(5L,TimeUnit.SECONDS, 60L, TimeUnit.SECONDS, true); feignClient.test(1L, options);
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/500968.html
標籤:其他
