最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

SpringCloud微服務(wù)Hystrix:如何解決災(zāi)難性雪崩效應(yīng)?

2021-03-26 17:18 作者:自學(xué)Python的小姐姐呀  | 我要投稿


一、什么是災(zāi)難性的雪崩效應(yīng)

? ? ?在微服務(wù)架構(gòu)的項目中,尤其是中大型項目,肯定會出現(xiàn)一個服務(wù)調(diào)用其他的服務(wù),其他服務(wù)又調(diào)用別的服務(wù),服務(wù)和服務(wù)之間形成了一種鏈式的調(diào)用關(guān)系。

? ? ? 導(dǎo)致服務(wù)U和服務(wù)T的負載過高。運行性能下降。會導(dǎo)致其他調(diào)用服務(wù)U和服務(wù)T的鏈條出現(xiàn)問題。從而所有的項目可能都出現(xiàn)的問題。



?當(dāng)其中某一個服務(wù)突然遇到大量請求時。整個鏈條上所有服務(wù)負載驟增。

?這種情況就稱為災(zāi)難性的雪崩效應(yīng)。


二、雪崩效應(yīng)原因:

1.服務(wù)提供者(Application Service)不可用。

(1)硬件故障、

(2)程序BUG

(3)緩存擊穿

(4)并發(fā)請求量過大等。

2.重試加大流量。

(1)用戶重試

(2)代碼重試邏輯等。

3.服務(wù)調(diào)用者(Application Client)不可用。

(1)同步請求阻塞造成的資源耗盡等。

? ? 雪崩效應(yīng)最終的結(jié)果就是 服務(wù)鏈條中的某一個服務(wù)不可用,導(dǎo)致一系列的服務(wù)不可用,最終造成服務(wù)邏輯崩潰。這種問題造成的后果,往往是無法預(yù)料的。

三、如何防止災(zāi)難性雪崩效應(yīng)

1、降級

? ? ? 降級是指,當(dāng)請求超時、資源不足等情況發(fā)生時進行服務(wù)降級處理,不調(diào)用真實服務(wù)邏輯,而是使用快速失?。╢allback)方式直接返回一個托底數(shù)據(jù),保證服務(wù)鏈條的完整,避免服務(wù)雪崩。

2、熔斷

? ? ? 當(dāng)一定時間內(nèi),異常請求比例(請求超時、網(wǎng)絡(luò)故障、服務(wù)異常等)達到閥值時,啟動熔斷器,熔斷器一旦啟動,則會停止調(diào)用具體服務(wù)邏輯,通過fallback快速返回托底數(shù)據(jù),保證服務(wù)鏈的完整。

3、請求緩存

? ? ? Hystrix為了降低訪問服務(wù)的頻率,支持將一個請求與返回結(jié)果做緩存處理。如果再次請求的URL沒有變化,那么Hystrix不會請求服務(wù),而是直接從緩存中將結(jié)果返回。這樣可以大大降低訪問服務(wù)的壓力。

4、請求合并

1.沒有請求合并

Application Service 負載是Application Client發(fā)送請求的總數(shù)量

2.請求合并

把一段時間范圍內(nèi)的所有請求合并為一個請求。大大的降低了Application Service 負載。

5、隔離

1.線程池隔離

2.信號量隔離

3.線程池隔離和信號量隔離

4.限流說明

四、Hystrix簡介

? ? 在Spring Cloud中解決災(zāi)難性雪崩效應(yīng)就是通過Spring Cloud Netflix Hystrix實現(xiàn)的。

? ? Hystrix [h?st'r?ks],中文含義是豪豬,因其背上長滿棘刺,從而擁有了自我保護的能力。本文所說的Hystrix(中文:斷路器)是Netflix開源的一款容錯框架,同樣具有自我保護能力。

? ? 通俗解釋:Hystrix就是保證在高并發(fā)下即使出現(xiàn)問題也可以保證程序繼續(xù)運行的一系列方案。作用包含兩點:容錯和限流。

? ? 在Spring cloud中處理服務(wù)雪崩效應(yīng),都需要依賴hystrix組件。在Application Client應(yīng)用的pom文件中都需要引入下述依賴:

<dependency>

? ? ? ? ? ?<groupId>org.springframework.cloud</groupId>

? ? ? ? ? ?<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>

</dependency>

通過使用Hystrix,我們能方便的防止雪崩效應(yīng), 同時使系統(tǒng)具有自動降級和自動恢復(fù)服務(wù)的效? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 果.


詳細解決方法可以觀看上方視頻,免費領(lǐng)取源代碼資料哦~


SpringCloud微服務(wù)Hystrix:如何解決災(zāi)難性雪崩效應(yīng)?的評論 (共 條)

分享到微博請遵守國家法律
花莲县| 巴林左旗| 通海县| 大方县| 运城市| 大冶市| 交口县| 肃宁县| 木兰县| 巩留县| 洱源县| 固阳县| 海原县| 什邡市| 庆阳市| 米易县| 宿松县| 清水县| 乌兰浩特市| 泗洪县| 泾川县| 诏安县| 格尔木市| 柘城县| 额敏县| 文成县| 江油市| 同德县| 盘锦市| 茶陵县| 马鞍山市| 开化县| 特克斯县| 黑山县| 安徽省| 拉萨市| 庆云县| 五峰| 精河县| 始兴县| 铜山县|