Sentinel限流規則-流控模式之關聯模式


在添加限流規則時,點擊高級選項,可以選擇三種流控模式:
1.直接:統計當前資源的請求,觸發閾值時對當前資源直接限流,也是默認的模式
2.關聯:統計與當前資源相關的另一個資源,觸發閾值時,對當前資源限流
3.鏈路:統計從指定鏈路訪問到本資源的請求,觸發閾值時,對指定鏈路限流

流控模式-關聯
關聯模式:統計與當前資源相關的另一個資源,觸發閾值時,對當前資源限流

使用場景:比如用戶支付時需要修改訂單狀態,同時用戶要查詢訂單。查詢和修改操作會爭搶數據庫鎖,產生競爭。業務需求是有限支付和更新訂單的業務,因此當修改訂單業務觸發閾值時,需要對查詢訂單業務限流。

/read和/write產生關聯,將來會統計關聯資源/write,當/write QPS達到觸發閾值時,對/read進行限流。

當/write資源訪問量觸發閾值時,就會對/read資源限流,避免影響/write資源。

案例:流控模式-關聯
需求:在OrderController新建兩個端點:/order/query和/order/update,無需實現業務;
配置流控規則,當/order/update資源被訪問的QPS超過5時,對/order/query請求限流;
限流生效時,/order/update 正常訪問,/order/query 觸發限流提示。

注意:給誰限流,就給誰添加流控規則

 

訪問/order/query、/order/update資源 http://localhost:8088/order/query ##觸發關聯限流
http://localhost:8088/order/update ##不會觸發關聯限流

 

 

 

總結
滿足下面條件可以使用關聯模式:
1.兩個有競爭關系的資源
2.一個優先級較高,一個優先級較低


免責聲明!

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



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