簡體   English   中英

resilience4j 基於時間的斷路器表現為基於計數

[英]resilience4j Time based circuit breaker behaves as count based

我正在嘗試使用此配置測試基於時間的斷路器:

       failureRateThreshold :  50                 
       slidingWindowSize : 2                  
       slidingWindowType : TIME_BASED         
       minimumNumberOfCalls    : 100

我原以為它會在 2 秒過去時觸發故障率計算slidingWindowSize=2 ,但它會在調用次數超過 100 ( minimumNumberOfCalls ) 時執行。 即使 2 秒過去了而沒有達到 100 次調用,它也永遠不會更改為OPEN state(即使所有調用都失敗)。

這是錯誤還是預期的行為?

是的。 這是文檔中解釋的預期行為

配置在 CircuitBreaker 可以計算錯誤率或慢速調用率之前所需的最小調用次數(每個滑動 window 周期)。 例如,如果 minimumNumberOfCalls 為 10,則必須至少記錄 10 次呼叫,然后才能計算故障率。 如果僅記錄了 9 個調用,即使所有 9 個調用都失敗,CircuitBreaker 也不會轉換為打開。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM