亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

Spring Cloud Config Client超時及重試示例詳解

2024-07-14 08:40:50
字體:
來源:轉載
供稿:網友

簡介

有時客戶端需要在 config server 無響應時進行重試,以給 config server 時間進行恢復。利用 spring 提供的重試組件,我們可以方便的配置重試機制,包括重試間隔,重試次數等。下面話不多說了,來一起看看詳細的介紹吧。

項目源碼

點擊下載

為 web 項目添加依賴

開啟客戶端重試功能需要兩個新依賴,spring-retry 和 spring-boot-starter-aop,把如下代碼添加到 web 項目的 pom.xml 文件中:

<dependency> <groupId>org.springframework.retry</groupId> <artifactId>spring-retry</artifactId> <version>1.2.2.RELEASE</version></dependency><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>

然后在 bootstrap.yml 文件中添加如下配置:

spring: application: name: web-client cloud: config:  uri: http://localhost:8888  fail-fast: true  retry:  initial-interval: 1000  max-attempts: 6  max-interval: 2000  multiplier: 1.1

首先把 spring.cloud.config.fail-fast 為true,即在獲取不到遠程配置時,立即失敗,但是用下邊的配置進行重試。

spring.cloud.config.retry 所有子項均為默認值:

  • initial-interval: 最初重試間隔為 1000 毫秒
  • max-attempts: 最多重試 6 次
  • max-interval: 最長重試間隔為 2000 毫秒
  • multiplier:  每次重試失敗后,重試間隔所增加的倍數

測試

如果使用了本教程的項目,我們需要首先啟動 configserver 項目,然后再啟動 registry 項目開啟 eureka,因為 web 客戶端使用了 eureka 服務,之后關閉 configserver,然后啟動 web 項目,會看到如下 log:

2018-05-15 16:04:58.421  INFO 2663 --- [           main] c.c.c.ConfigServicePropertySourceLocator : Fetching config from server at: http://localhost:8888

重試 6 次失敗后,客戶端啟動失敗,如果中途開啟 configserver,則 web 客戶端啟動成功。
細粒度控制重試

我們可以在代碼中實現更精細的控制重試機制,在 web 項目中創建一個新的 java 類 cn.zxuqian.configurations.RetryConfiguration,添加如下代碼:

package cn.zxuqian.configurations;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;import org.springframework.context.annotation.Bean;import org.springframework.retry.interceptor.RetryInterceptorBuilder;import org.springframework.retry.interceptor.RetryOperationsInterceptor;public class RetryConfiguration { private static Logger log = LoggerFactory.getLogger(RetryConfiguration.class); @Bean @ConditionalOnMissingBean(name = "configServerRetryInterceptor") public RetryOperationsInterceptor configServerRetryInterceptor() {  log.info(String.format(    "configServerRetryInterceptor: Changing backOffOptions " +      "to initial: %s, multiplier: %s, maxInterval: %s",    1000, 1.2, 5000));  return RetryInterceptorBuilder    .stateless()    .backOffOptions(1000, 1.2, 5000)    .maxAttempts(10)    .build(); }}

這里我們定義了configServerRetryInterceptor方法用于 Spring Retry 使用我們自定義的重試攔截器。方法使用 RetryInterceptorBuilder 按要求創建了一個 stateless 的 RetryOperationsInterceptor,并設置了初始重試間隔為 1000 毫秒,增加倍數為 1.2 倍,最大重試間隔為 5000 毫秒,最大重試次數為 10 次,builder 還提供了諸如配置重試機制之類的接口,有興趣的讀者可自行研究。

@ConditionalOnMissingBean 標明當 BeanFactory 中沒有名為 configServerRetryInterceptor 的 bean 時才匹配此 Bean。

最后在 src/main/resources/META-INF/ (沒有可創建此文件夾) 新建一個 spring.factories 文件,指定我們剛創建類為啟動時的配置,以在獲取遠程配置之前生效:

org.springframework.cloud.bootstrap.BootstrapConfiguration=cn.zxuqian.configurations.RetryConfiguration

測試

最后在關閉 configserver 的條件下啟動 web 項目,然后就會看到重試十次之后,項目啟動失敗。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产亚洲精品高潮| 亚洲精品日韩av| 中文字幕精品久久久久| 日韩视频中文字幕| 亚洲乱码av中文一区二区| 国产精品嫩草影院一区二区| 久久精视频免费在线久久完整在线看| 日韩亚洲欧美成人| 亚洲视频免费一区| 亚洲午夜国产成人av电影男同| 国产成人91久久精品| 久久精品视频中文字幕| 久久久国产精品x99av| 亚洲毛片在线免费观看| 92看片淫黄大片看国产片| 日韩一中文字幕| 成人在线激情视频| 成人激情av在线| 最新国产精品亚洲| 国产国语刺激对白av不卡| 国产在线98福利播放视频| 欧美韩国理论所午夜片917电影| 91香蕉电影院| 色妞色视频一区二区三区四区| 日韩精品亚洲视频| 国产精品一区二区久久国产| 国产亚洲人成网站在线观看| 亚洲欧洲日韩国产| 日韩成人在线视频| 亚洲国产精品成人va在线观看| 久久综合免费视频影院| 亚洲欧美国产va在线影院| 欧美日韩成人在线视频| 不卡av日日日| 国产一区二区免费| 国产日产欧美精品| 欧美中文字幕视频在线观看| 久久精品国产96久久久香蕉| 欧美成人午夜激情| xvideos亚洲| 人人澡人人澡人人看欧美| 久久久久国产一区二区三区| 国产精品福利无圣光在线一区| 久久夜色精品亚洲噜噜国产mv| 69av在线视频| 国产激情久久久久| 久久久免费观看视频| 一区二区三区精品99久久| 亚洲天天在线日亚洲洲精| 欧美大荫蒂xxx| 午夜精品国产精品大乳美女| 欧美成人免费网| 久久综合久久美利坚合众国| 久久久成人精品| 国内揄拍国内精品| 欧美性猛交xxxx富婆| 亚洲国产精品成人va在线观看| 国产精品www色诱视频| 久久久久久亚洲| 青青草一区二区| 亚洲一区二区少妇| 亚洲成色777777女色窝| 成人亚洲激情网| 国产91在线视频| 国产69久久精品成人| 国产精品羞羞答答| 成人国产精品一区二区| 97精品国产97久久久久久春色| 97超级碰在线看视频免费在线看| 亚洲男人天堂2023| 亚洲国产精品女人久久久| 亚洲欧美日韩国产中文专区| 亚洲国产欧美在线成人app| 国产精品∨欧美精品v日韩精品| 九九热视频这里只有精品| 中日韩美女免费视频网站在线观看| 亚洲综合色av| 久久久久久久久电影| 欧美大荫蒂xxx| 国产一区二区三区视频在线观看| 欧美激情乱人伦| 欧美一区二区三区四区在线| 91精品久久久久久久| 日韩欧美中文免费| 久久视频精品在线| 国产精品对白刺激| 性视频1819p久久| 国产精品网红福利| 国产玖玖精品视频| 色综合久久88色综合天天看泰| 国产精品第一页在线| 日韩视频―中文字幕| 欧美日韩999| 亚洲人a成www在线影院| 亚洲精品资源美女情侣酒店| 深夜福利日韩在线看| 欧美成人在线免费| 亚洲一区久久久| 57pao国产精品一区| 日韩成人免费视频| 日韩精品欧美激情| 欧美日韩精品中文字幕| 亚洲日本成人女熟在线观看| 久久精品亚洲精品| 亚洲一区二区三区香蕉| 国产成人在线视频| 亚洲成人激情在线观看| 黑人巨大精品欧美一区免费视频| 国产精品入口免费视| 在线观看精品国产视频| 一区二区三区四区精品| 麻豆国产精品va在线观看不卡| 欧美日韩一区二区免费在线观看| 国产精品欧美风情| 日韩中文字幕在线精品| 欧美成人午夜激情| 中文字幕av一区二区三区谷原希美| 精品久久国产精品| 日韩av片电影专区| 国产成人精品一区二区| 亚洲美女性视频| 国产精品av网站| 日韩av在线导航| 亚洲人成网站在线播| 欧美日韩亚洲视频| 亚洲经典中文字幕| 国产91精品黑色丝袜高跟鞋| 日韩av一区二区在线观看| 乱亲女秽乱长久久久| 欧美一区深夜视频| 亚洲免费av电影| 狠狠久久五月精品中文字幕| 亚洲mm色国产网站| 欧美黄色性视频| 久久久女人电视剧免费播放下载| 国产精品电影久久久久电影网| xvideos成人免费中文版| 日韩久久精品成人| 日韩成人av一区| 成人福利网站在线观看11| 欧美精品久久久久久久| 国产亚洲视频在线| 一个色综合导航| 日韩欧美中文免费| 日本伊人精品一区二区三区介绍| 91国在线精品国内播放| 中文在线资源观看视频网站免费不卡| www国产精品com| 日韩欧美亚洲国产一区| 国内偷自视频区视频综合| 亚洲成人1234| 欧美成人在线免费视频| 亚洲欧美综合区自拍另类| 亚洲精品日韩在线| 亚洲在线观看视频| 欧美在线一区二区三区四| 久久久在线视频| 最近2019免费中文字幕视频三| 日韩电视剧免费观看网站| 一个人看的www久久| 亚洲女人初尝黑人巨大| 日韩在线视频免费观看| 久久久久久久网站| 欧美日韩中国免费专区在线看|