最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringCloud的Hystrix簡單介紹

 更新時間:2023年07月25日 10:21:02   作者:「已注銷」  
這篇文章主要介紹了SpringCloud的Hystrix簡單介紹,SpringCloud Hystrix是Netflix開源的一款容錯框架,具備服務(wù)降級,服務(wù)熔斷,依賴隔離,監(jiān)控(Hystrix Dashboard)等功能,同樣具有自我保護(hù)能力,需要的朋友可以參考下

Hystrix 介紹

Hystrix ,中文含義是豪豬,因其背上長滿棘刺,從而擁有了自我保護(hù)的能力。

SpringCloud Hystrix是Netflix開源的一款容錯框架,具備服務(wù)降級,服務(wù)熔斷,依賴隔離,監(jiān)控(Hystrix Dashboard)等功能,同樣具有自我保護(hù)能力。為了實現(xiàn)容錯和自我保護(hù)

服務(wù)雪崩

分布式系統(tǒng)環(huán)境下,服務(wù)間類似依賴非常常見,一個業(yè)務(wù)調(diào)用通常依賴多個基礎(chǔ)服務(wù)。如下圖,對于同步調(diào)用,當(dāng)庫存服務(wù)不可用時,商品服務(wù)請求線程被阻塞,當(dāng)有大批量請求調(diào)用庫存服務(wù)時,最終可能導(dǎo)致整個商品服務(wù)資源耗盡,無法繼續(xù)對外提供服務(wù)。并且這種不可用可能沿請求調(diào)用鏈向上傳遞,這種現(xiàn)象被稱為雪崩效應(yīng)。

一個服務(wù)失敗,導(dǎo)致整條鏈路的服務(wù)都失敗的情形,我們稱之為服務(wù)雪崩

服務(wù)降級

一般是從整體負(fù)荷考慮。就是當(dāng)某個服務(wù)熔斷之后,服務(wù)器將不再被調(diào)用,此時客戶端可以自己準(zhǔn)備一個本地的fallback回調(diào),返回一個缺省值。

這樣做,雖然會出現(xiàn)局部的錯誤,但可以避免因為一個服務(wù)掛機(jī),而影響到整個架構(gòu)的穩(wěn)定性。

?通過服務(wù)降級,能保證在某個或某些服務(wù)出問題的時間,不會導(dǎo)致整個項目出現(xiàn)問題,避免級聯(lián)故障,從而來提高分布式系統(tǒng)的彈性。

服務(wù)熔斷

Hystrix意為“斷路器”,就和我們生活中的保險絲,開關(guān)一個道理。

當(dāng)我們給整個服務(wù)配置了服務(wù)降級后,如果服務(wù)提供者發(fā)生了錯誤后,就會調(diào)用降級后的方法來保證程序的運行。

但是呢?有一個問題,調(diào)用者并不知道它調(diào)用的這個服務(wù)出錯了,就會在業(yè)務(wù)發(fā)生的時候一直調(diào)用,然后服務(wù)會一直報錯,然后去調(diào)用降級方法。好比下圖中:

Hystrix入門案例

添加如下依賴

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>

啟動類上添加注解

@EnableHystrix

使用feign請求數(shù)據(jù) ,加上注解@HystrixCommand(fallbackMethod="fallback")

fallback是方法 在方法中保持傳參和返回值相同。

服務(wù)報錯降級

// http://localhost:7001/consumer/test
@HystrixCommand(fallbackMethod = "fallback")
@GetMapping("/test")
public String testFeign(String str) throws Exception {
    if ("y".equalsIgnoreCase(str)) {
        throw new Exception();
    }
    return providerService.provider(str);
}
public String fallback(String str) {
    return "服務(wù)繁忙,請稍后重試!";
}

服務(wù)超時降級

// http://localhost:7001/consumer/timeout
@HystrixCommand(fallbackMethod = "timeout",commandProperties = {
        @HystrixProperty(name = "execution.isolation.thread.timeoutInMilliseconds",value = "3000")
})
@GetMapping("/timeout")
public String testTimeout(String str) throws Exception {
    Thread.sleep(5000);
    return providerService.provider(str);
}
public String timeout(String str) {
    return "請求時間超時";
}

到此這篇關(guān)于SpringCloud的Hystrix簡單介紹的文章就介紹到這了,更多相關(guān)SpringCloud的Hystrix內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Java Web項目啟動執(zhí)行順序

    詳解Java Web項目啟動執(zhí)行順序

    這篇文章主要介紹了詳解Java Web項目啟動執(zhí)行順序,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • Lambda表達(dá)式和Java集合框架

    Lambda表達(dá)式和Java集合框架

    本文主要介紹了Lambda表達(dá)式和Java集合框架的相關(guān)知識,具有很好的參考價值。下面跟著小編一起來看下吧
    2017-03-03
  • Maven中常用命令完整版速查表(2026年最新)

    Maven中常用命令完整版速查表(2026年最新)

    日常開發(fā)中,熟練運用?Maven?命令能大幅提升開發(fā)效率,本文整理了Maven常用命令速查表,涵蓋核心構(gòu)建,依賴管理,測試打包等場景,希望對大家有所幫助
    2026-04-04
  • Redis分布式鎖實現(xiàn)方式及超時問題解決

    Redis分布式鎖實現(xiàn)方式及超時問題解決

    這篇文章主要介紹了Redis分布式鎖實現(xiàn)方式及超時問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • Docker使用 Maven 插件構(gòu)建鏡像的方法

    Docker使用 Maven 插件構(gòu)建鏡像的方法

    本篇文章主要介紹了Docker使用 Maven 插件構(gòu)建鏡像的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • 基于Java方式實現(xiàn)數(shù)據(jù)同步

    基于Java方式實現(xiàn)數(shù)據(jù)同步

    這篇文章主要為大家詳細(xì)介紹了基于Java方式實現(xiàn)數(shù)據(jù)同步,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • Spring Boot整合EhCache的步驟詳解

    Spring Boot整合EhCache的步驟詳解

    EhCache 是一個純Java的進(jìn)程內(nèi)緩存框架,具有快速、精干等特點,是Hibernate中默認(rèn)CacheProvider。這篇文章主要介紹了Spring Boot整合EhCache的步驟詳解,需要的朋友可以參考下
    2020-02-02
  • Java如何實現(xiàn)通過鍵盤輸入一個數(shù)組

    Java如何實現(xiàn)通過鍵盤輸入一個數(shù)組

    這篇文章主要介紹了Java實現(xiàn)通過鍵盤輸入一個數(shù)組,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Java 關(guān)鍵字 速查表介紹

    Java 關(guān)鍵字 速查表介紹

    下面小編就為大家?guī)硪黄狫ava 關(guān)鍵字 速查表介紹。小編覺得聽不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • Java反轉(zhuǎn)字符串的10種方法

    Java反轉(zhuǎn)字符串的10種方法

    這篇文章主要介紹了Java反轉(zhuǎn)字符串的10種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,下面我們來一起學(xué)習(xí)一下吧
    2019-06-06

最新評論

辉县市| 六盘水市| 收藏| 台山市| 游戏| 集贤县| 陈巴尔虎旗| 繁峙县| 永城市| 庆元县| 隆尧县| 沙田区| 尼勒克县| 平山县| 安康市| 乡城县| 万安县| 诸暨市| 黄龙县| 平阴县| 宁国市| 玉门市| 贵港市| 吉木萨尔县| 周至县| 克东县| 秭归县| 教育| 防城港市| 三明市| 郓城县| 家居| 乌兰察布市| 新安县| 达州市| 托克逊县| 仁化县| 崇左市| 开远市| 深水埗区| 江源县|