2020-03-25 接口高並發問題下,Hystrix的使用


一、問題

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 5.2 Hystrix 的介紹

 

 

 

 

 

 

hystrix的使用

1、對RestTemplate的支持

  a、引入依賴

 

 

   b、啟動類上激活hystrix

 

 

 c、配置熔斷觸發的降級邏輯

 

d、在需要保護的接口上使用@HystrixCommand配置

 

 

 

e、配置判斷請求超過多少時間,觸發熔斷保護機制。

 

 

 

f、測試消費者項目接口,這個接口是調用服務提供者項目的,將服務提供者項目關掉,然后訪問。

 

g、對整個類的接口統一配置熔斷降級方法,這樣就不用每個接口都配置一遍

 

 

 

 2、對feign組件的支持

a、引入依賴(feign中已經繼承了hystrix)

b、在feign中開啟hystrix。

 

 

 

c、自定義一個接口的實現類,這個實現類就是熔斷觸發的降級類。

 

 

 

 

 

d、修改feignClient接口添加降級方法的支持

 

 e、設置鏈接超時時間,進行熔斷

#在feign中開啟對hystrix的支持
feign:
client:
config:
default:
connectTimeout: 5000
readTimeout: 5000
hystrix:
enabled: true
hystrix:
command:
default:
execution:
isolation:
thread:
timeoutInMilliseconds: 5000 #默認的連接超時時間1秒,若一秒沒有返回數據,自動的觸發降級邏輯。上面的feign超時時間也要一起設置。
circuitBreaker:
requestVolumeThreshold: 5 #觸發熔斷的最小請求次數,默認20 /10秒
sleepWindowInMilliseconds : 10000 #熔斷多少秒后去嘗試請求 默認5 打開狀態的時間
errorThresholdPercentage: 50 #熔斷觸發的失敗請求最小占比,默認50%
# threadpool:
# default:
# coreSize: 10 # 全局配置

這個feign和hystrix配合,設置鏈接超時熔斷。一定要feign跟hystrix超時時間一起設置。

 

 六、

 

設置監控信息:

 

 

 

 

查詢監控接口:

 

 

 暴露hystrix所有監控端點

 

查詢監控狀態

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM