日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

hystrix 单独使用_使用Hystrix对Dubbo消费者提供线程隔离保护

發布時間:2023/12/20 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hystrix 单独使用_使用Hystrix对Dubbo消费者提供线程隔离保护 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在dubbo中對于消費者的保護提供了actives進行并發控制保護,但是功能相對薄弱,下面我們探討下如何使用Netflix提供的服務容錯組件Hystrix對dubo消費者提供線程隔離保護

為什么需要Hystrix?

在大中型分布式系統中,通常我們需要依賴很多dubbo服務,如下圖:

在高并發訪問下,這些依賴的穩定性與否對系統的影響非常大,但是依賴有很多不可控問題:如網絡連接緩慢、資源繁忙、暫時不可用、服務脫機等。

如下圖:QPS為50的依賴 "I" 出現不可用、但是其他依賴仍然可用。

當依賴I 阻塞時,大多數服務器的線程池就出現阻塞,影響整個線上服務的穩定性。如下圖:

當高并發的依賴失敗時如果沒有隔離措施,當前應用服務就有被拖垮的風險!

例如:一個依賴30個SOA服務的系統,每個服務99.99%可用。

99.99%的30次方 ≈ 99.7%

0.3% 意味著一億次請求 會有 3,000,00次失敗

換算成時間大約每月有2個小時服務不穩定

隨著服務依賴數量的變多,服務不穩定的概率會成指數性提高。

解決問題方案:對依賴做隔離,Hystrix就是處理依賴隔離的框架,同時也是可以幫我們做依賴服務的治理和監控。

Hystrix如何解決依賴隔離

Hystrix使用命令模式HystrixCommand(Command)包裝依賴調用邏輯,每個命令在單獨線程中/信號授權下執行。

可配置依賴調用超時時間,當調用超時時,直接返回或執行fallback邏輯。

為每個依賴提供一個小的線程池(或信號),如果線程池已滿調用將被立即拒絕,默認不采用排隊,加速失敗判定時間。

請求失敗(異常,拒絕,超時,短路)時執行fallback(降級)邏輯。

提供熔斷器組件,可以自動運行或手動調用,停止當前依賴一段時間(10秒),熔斷器默認錯誤率閾值為50%,超過將自動運行。

提供近實時依賴的統計和監控

Hystrix依賴的隔離架構,如下圖:

Hystrix實時依賴統計、監控如下:

Dubbo消費者保護

具體實現參見項目說明:https://github.com/yskgood/dubbo-hystrix-support.git

總結

以上是生活随笔為你收集整理的hystrix 单独使用_使用Hystrix对Dubbo消费者提供线程隔离保护的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。