當服務 b 業務執行緒池全部用滿的狀態時,應該拒絕服務 a 的請求(這一點 dubbo 就做得很好了),保護自己,不被服務 a 拖垮;服務 a 在服務 b 多次拒絕請求的情況下不應該再向服務 b 傳送請求,懂得體量它人,不連累它人;服務 a 在請求大量堆積的情況下,也應該拒絕客戶端的請求,而不是繼續堆積請求,請求處理不過來,堆積再多也沒有任何意義。這些便是我們要討論的服務降級。
服務降級是服務自我保護的一種方式,或者保護下游服務的一種方式,用於確保服務不會受請求突增影響變得不可用,至少確保服務不會奔潰。常見的服務降級實現方式有:開關降級、限流降級、熔斷降級。
假設服務 a 需要依賴服務 b 完成客戶端的一次請求,那麼服務 b 可以通過壓測方式**單節點所能處理的最大併發請求數,只要最大併發數不超過自己的極限服務就能穩定執行。限**務 b 處理最大併發請求就是限流,例如限制每秒只處理 200 個請求,超出的請求採取流量控制策略處理,或直接拒絕或排隊等待,這便是限流降級。
談談為什麼需要服務治理(Dubbo)
服務治理主要針對於當前分布式架構下多服務 微服務等。服務是分布式系統下的乙個不大不小的部分,有了服務的組成,整個系統才能活起來。隨著業務的增長,服務不能一味地隨之增長,需要管理 治理。沒有服務治理的分布式系統不一定會失敗,但是隨著業務的增長,這個系統一定會很痛苦。服務治理嚴格意義上應該劃分為三個階段...
為什麼伺服器需要備份?
在雲計算系統中,許多常見的故障可能性,將導致嚴重的資料丟失 軟體故障 應用系統出現錯誤 檔案系統崩潰。今年年中,廣州一區主備兩條運營商網路鏈路同時中斷,導致國內部分使用者出現資源訪問失敗 控制台登入異常,甚至資料完全丟失,便是軟體故障造成的事故。偶然故障 人為失誤 非授權操作等,典型案例如近日國內一...
談談為什麼需要服務治理(Dubbo)
服務治理主要針對於當前分布式架構下多服務 微服務等。服務是分布式系統下的乙個不大不小的部分,有了服務的組成,整個系統才能活起來。隨著業務的增長,服務不能一味地隨之增長,需要管理 治理。沒有服務治理的分布式系統不一定會失敗,但是隨著業務的增長,這個系統一定會很痛苦。服務治理的目標 服務治理嚴格意義上應...