Spring Cloud 實戰四 重試機制配置

2021-08-20 13:56:05 字數 1867 閱讀 4552

首先引入依賴:

org.springframework.retrygroupid>

spring-retryartifactid>

dependency>

1、rest+ribbon:重試機制配置

spring:name:client

cloud:loadbalancer:retry:enabled: trueribbon:# 同一例項最大重試次數,不包括首次呼叫

maxautoretries:1

# 重試其他例項的最大重試次數,不包括首次所選的server

maxautoretriesnextserver:2

# 是否所有操作都進行重試

oktoretryonalloperations:true

2、由於服務service-user 埠9001 呼叫介面中進行了thread.sleep(120000l);所以請求超時之後,重試機制對9002埠進行了請求。

等待響應中:

最後請求結果,通過9002完成響應:

2、feign:重試機制配置

相關配置介紹

說明hystrix.command.default.execution.isolation.thread.timeoutinmilliseconds

斷路器的超時時間需要大於ribbon的超時時間,不然不會觸發重試。

hello-service.ribbon.connecttimeout

請求連線的超時時間

hello-service.ribbon.readtimeout

請求處理的超時時間

hello-service.ribbon.oktoretryonalloperations

是否對所有操作請求都進行重試

hello-service.ribbon.maxautoretriesnextserver

重試負載均衡其他的例項最大重試次數,不包括首次server

hello-service.ribbon.maxautoretries

同一臺例項最大重試次數,不包括首次呼叫

新增以下配置即可

全域性配置

# feign重試機制

ribbon:maxautoretries:1

maxautoretriesnextserver:2

oktoretryonalloperations:true

區域性配置:

# feign重試機制

service-user:ribbon:maxautoretries:1

maxautoretriesnextserver:2

oktoretryonalloperations:true

C 四 過載,重寫,重定義

2 重寫 3 重定義 4 重載重定義與重寫 過載指的是在同乙個作用域內,兩函式的函式名可以相同,但是引數不能完全相同,可以是引數型別不同或者是引數個數不同,至於返回值,不影響過載。1 函式過載從底層上來說,還是兩個不同的函式!函式會被編譯成 test int int inttest int a,in...

HTTP協議分析系列(四) 重定向

第一步 新建乙個header.php 頁 header location 預設是302重定向 第二步 分析 如何制定重定向呢?指定用301 重定向,header location 預設是302重定向 還有乙個問題 對於一片新聞,get請求,重定向無所謂,還能看到原來的內容就行。但如果是post 資料...

字尾陣列四 重複旋律4

我們知道乙個 旋律被表示為長度為 n 的數構成的數列。我們把一段旋律稱為 k,l 重複的,如果它滿足由乙個長度為l的字串重複了k次組成。如旋律abaabaabaaba是 4,3 重複的,因為它由aba重複4次組成。小hi想知道一部作品中k最大的 k,l 重複旋律。輸入一行乙個僅包含小寫字母的字串。字...