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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Cloud Alibaba:Sentinel 熔断降级

發(fā)布時間:2025/3/19 javascript 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Cloud Alibaba:Sentinel 熔断降级 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1. 前言

Sentinel版本:1.8.0

1.8.0 對熔斷特性做了大量升級,低于此版本的謹慎參考

2. 熔斷策略

2.1 慢調(diào)用比例

最大 RT(即最大的響應時間):請求的響應時間大于RT則統(tǒng)計為慢調(diào)用。

當單位統(tǒng)計時長(默認1秒)內(nèi),請求數(shù)目大于設置的最小請求數(shù)目,并且慢調(diào)用的比例大于閾值,則接下來的熔斷時長內(nèi)請求會自動被熔斷。

經(jīng)過熔斷時長后熔斷器會進入探測恢復狀態(tài)(HALF-OPEN 狀態(tài)),若接下來的一個請求響應時間小于設置的慢調(diào)用 RT 則結(jié)束熔斷,若大于設置的慢調(diào)用 RT 則會再次被熔斷。


測試例子:

寫一個接口,通過sleep參數(shù)來決定是否睡眠1秒。

傳 true 則觸發(fā)睡眠,請求時間 > RT
傳 false 則直接返回,請求時間 < RT

@GetMapping("/order1")public String order1(boolean sleep){if (sleep){try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}return "order1";}
  • 在瀏覽器快速多次打開 /order1?sleep=true ,觸發(fā)熔斷
  • 然后再調(diào)用的時候,直接報錯 Blocked by Sentinel (flow limiting)
  • 等待幾秒,熔斷時間過后。如果再次調(diào)用 /order1?sleep=true,則又會觸發(fā)熔斷;如果是調(diào)用/order1?sleep=false,則結(jié)束熔斷,恢復正常。

2.2 異常比例

當單位統(tǒng)計時長(statIntervalMs)內(nèi)請求數(shù)目大于設置的最小請求數(shù),并且異常的比例大于閾值,則接下來的熔斷時長內(nèi)請求會自動被熔斷。經(jīng)過熔斷時長后熔斷器會進入探測恢復狀態(tài)(HALF-OPEN 狀態(tài)),若接下來的一個請求成功完成(沒有錯誤)則結(jié)束熔斷,否則會再次被熔斷。異常比率的閾值范圍是 [0.0, 1.0],代表 0% - 100%。

整個邏輯跟上一步的慢調(diào)用比例基本類似,這里就不再畫圖了

測試例子:

修改上面的接口,通過error判斷是否拋出異常

@GetMapping("/order1")public String order1(boolean error) throws Exception {if (error){throw new Exception("拋出異常");}return "order1";}
  • 在瀏覽器快速訪問 /order1?error=true,直到顯示Blocked by Sentinel (flow limiting)
  • 靜等幾秒,熔斷時間過后
  • 如果再次調(diào)用 /order1?error=true,則又會觸發(fā)熔斷;如果是調(diào)用/order1?error=false,則結(jié)束熔斷,恢復正常。

2.3 異常數(shù)

當單位統(tǒng)計時長內(nèi)異常數(shù)目超過閾值之后會自動進行熔斷。經(jīng)過熔斷時長后熔斷器會進入探測恢復狀態(tài)(HALF-OPEN 狀態(tài)),若接下來的一個請求成功完成(沒有錯誤)則結(jié)束熔斷,否則會再次被熔斷。

3. 注意事項

異常降級僅針對業(yè)務異常,對 Sentinel 限流降級本身的異常(BlockException)不生效

總結(jié)

以上是生活随笔為你收集整理的Spring Cloud Alibaba:Sentinel 熔断降级的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。