白話:服務降級與熔斷的區別

雖然以前在《Spring Cloud構建微服務架構》系列文章中介紹了Hystrix服務降級Hystrix斷路器的概念。可是,仍是一直收到這樣的提問:降級與熔斷區別是什麼?而且在不少交流過程當中,發現有很多童鞋對降級和熔斷的概念有混淆的狀況。因此,這篇博文準備換一種方式來講說這兩個概念,以幫助讀者更好的理解以前兩篇文章中介紹的這兩個重要知識。spring

下面經過一個平常的故事來講明一下什麼是服務降級,什麼是熔斷。架構

故事的背景是這樣的:因爲小強在工做中碰到一些問題,因而想請教一下業界大牛小壯。因而發生了下面的兩個場景:微服務

小強在拿起經常使用手機撥號時發現該手機沒有可以撥通,因此就拿出了備用手機撥通了某A的電話,這個過程就叫作降級(主邏輯失敗採用備用邏輯的過程)。spa

因爲每次小壯的解釋都屬於長篇大論,不太容易理解,因此小強每次找小壯溝通的時候都但願經過經常使用手機來完成,由於該手機有錄音功能,這樣本身能夠慢慢消化。因爲上一次的溝通是用備用電話完成的,小強又碰到了一些問題,因而他又嘗試用經常使用電話撥打,這一次又沒有可以撥通,因此他不得不又拿出備用手機給某A撥號,就這樣連續的通過了幾回在撥號設備選擇上的「降級」,小強以爲短時間內經常使用手機可能由於運營商問題沒法正常撥通了,因此,再以後一段時間的交流中,小強就再也不嘗試用經常使用手機進行撥號,而是直接用備用手機進行撥號,這樣的策略就是熔斷(經常使用手機因短時間內屢次失敗,而被暫時性的忽略,再也不嘗試使用)。blog

經過上面的故事,讀者是否能夠更容易地理解降級與熔斷的區別和關係呢?其實這裏還有一個知識點並無說起,那就是在熔斷以後,主邏輯的自動恢復,該內容其實在以前的Hystrix斷路器一文中詳細的描述,有興趣的讀者不妨回頭看一下這篇文章的內容。get

相關文章
相關標籤/搜索