這是高併發系統三大利器的最後一篇文章了,前面兩篇如果沒看的話可以先去看下前面的文章《高併發系統三大利器之限流》
《高併發系統三大利器之快取》。說到服務降級,大多數人可能會認為熔斷和降級是一樣的。我曾經也一度是這樣認為的,直到有一天乙個面試官問我熔斷和降級有啥區別嗎?我直接回答沒啥區別,然後就讓我回去等通知了,我才知道它們還是有區別的。我們先看下服務降級的定義:
服務降級是當伺服器壓力劇增的情況下,根據當前業務情況及流量對一些服務和頁面有策略的降級,以此釋放伺服器資源以保證核心任務的正常執行。服務雪崩
說到服務熔斷我們就得先了解下什麼是服務雪崩。雪崩效應好比就是蝴蝶效應,說的都是乙個小因素的變化,卻往往有著無比強大的力量,以至於最後改變整體結構、產生意想不到的結果。
多個微服務之間呼叫的時候,比如a
服務呼叫了b
服務,b
服務呼叫了c
服務,然後c
服務由於機器宕機或者網略故障, 然後就會導致b
服務呼叫c
服務的時候超時,然後a
服務呼叫b服務也會超時,最終整個鏈路都不可用了,導致整個系統不可用就跟雪蹦一樣。
雪崩效應產生的幾種場景共性
差異性
聊聊高併發系統之降級特技
降級的最終目的是保證核心服務可用,即使是有損的。而且有些服務是無法降級的 如加入購物車 結算 在進行降級之前要對系統進行梳理,看看系統是不是可以丟卒保帥 從而梳理出哪些必須誓死保護,哪些可降級 比如可以參考日誌級別設定預案 一般 比如有些服務偶爾因為網路抖動或者服務正在上線而超時,可以自動降級 警告...
聊聊高併發系統之降級特技
降級的最終目的是保證核心服務可用,即使是有損的。而且有些服務是無法降級的 如加入購物車 結算 在進行降級之前要對系統進行梳理,看看系統是不是可以丟卒保帥 從而梳理出哪些必須誓死保護,哪些可降級 比如可以參考日誌級別設定預案 一般 比如有些服務偶爾因為網路抖動或者服務正在上線而超時,可以自動降級 警告...
高併發系統設計 熔斷降級
熔斷降級主要用來解決由於依賴的資源或者服務不可用,最終導致整體服務宕機的情況。在討論熔斷與降級的時候,一般會涉及到另乙個專業名詞 雪崩。雪崩主要是指由於區域性故障最終導致全域性故障,致使整個系統無法正常工作的情況。雪崩一般由服務間的級聯反應引起,雪崩主要由兩個方面引起 1.資源耗盡或資源不足 2.服...