當前位置:編程學習大全網 - 網站源碼 - 分布式限流

分布式限流

限流是對 出入流量 進行控制 , 防止大量流入,導致資源不足,系統不穩定。

限流系統是對資源訪問的控制組件 , 控制主要有兩個功能 , 限流策略和熔斷策略,對不同的系統有不同的熔斷策略訴求,

有的系統希望直接拒絕、有的系統希望排隊等待、有的系統希望服務降級、有的系統會定制自己的熔斷策略,這裏只對 限流策略 這個功能做詳細的設計。

Guava RateLimiter提供了令牌桶算法實現:平滑突發限流(SmoothBursty) 和 平滑預熱限流(SmoothWarmingUp)實現

即壹個時間窗口內的請求數,如想限制某個接口/服務 每秒/每分鐘/每天的 請求數/調用量。如壹些基礎服務會被很多其他系統調用,

比如商品詳情頁服務會調用基礎商品服務調用,但是怕因為更新量比較大,將基礎服務打掛,這時我們需要對每秒/每分鐘的調用量進行限速;

此次控制分布式瞬發限流的設計類似於 窗口最大請求數設計業務請求,不滿足類似於Guava RateLimiter中的特性( 瞬發限流特性 )

接下來將實現壹種分布式 瞬發限流的實現 (令牌桶算法實現與RateLimiter類似,但基於分布式的實現)

distributed-current-limiter

  • 上一篇:Ffmpeg將yuv文件編碼成mp4。
  • 下一篇:ECharts 中箱線圖計算後數據出現負值的問題
  • copyright 2024編程學習大全網