ExponentialBackOffWithJitter class
Değişim yeniden deneme stratejisi ile Üstel Geri Alma uygular. Sonraki aralığı hesaplamak için işlev şudur (x x. yeniden denemedir): F(x) = min(Cmin+ (2^(x-1)-1) * rand(C * (1 – Jd), C*(1-Ju)), Cmax)
Oluşturucular
Exponential |
ExponentialBackOffWithJitter sınıfının yeni bir örneğini başlatır. |
Özellikler
immediate |
İlk yeniden denemenin hemen mi (true olarak ayarlandıysa) yoksa normalParameters.c gecikme süresinden sonra mı (false olarak ayarlandıysa) olması gerektiğini gösteren Boole değeri. |
normal |
Normal durumlarda her yeniden deneme arasındaki gecikmeyi hesaplamak için kullanılan yeniden deneme parametreleri (yani kısıtlanmaz). |
throttled |
Kısıtlanmış durumlarda her yeniden deneme arasındaki gecikmeyi hesaplamak için kullanılan yeniden deneme parametreleri. |
Yöntemler
next |
Her yeni yeniden denemede kesin olmayan bir şekilde yeniden denemeden önce beklenmesi gereken aralığı hesaplar. |
should |
Bağımsız değişken olarak geçirilen hataya bağlı olarak, bir hatanın geçici olup olmadığını ve işlemin yeniden denenip denenmeyeceğini belirler. |
Oluşturucu Ayrıntıları
ExponentialBackOffWithJitter(boolean, ErrorFilter)
ExponentialBackOffWithJitter sınıfının yeni bir örneğini başlatır.
new ExponentialBackOffWithJitter(immediateFirstRetry?: boolean, errorFilter?: ErrorFilter)
Parametreler
- immediateFirstRetry
-
boolean
ilk yeniden denemenin hemen mi (varsayılan) yoksa ilk aralığı mı (c değeri) beklemesi gerektiğini gösteren boole değeri.
- errorFilter
-
ErrorFilter
Özellik Ayrıntıları
immediateFirstRetry
İlk yeniden denemenin hemen mi (true olarak ayarlandıysa) yoksa normalParameters.c gecikme süresinden sonra mı (false olarak ayarlandıysa) olması gerektiğini gösteren Boole değeri.
immediateFirstRetry: boolean
Özellik Değeri
boolean
normalParameters
Normal durumlarda her yeniden deneme arasındaki gecikmeyi hesaplamak için kullanılan yeniden deneme parametreleri (yani kısıtlanmaz).
normalParameters: ExponentialBackoffWithJitterParameters
Özellik Değeri
ExponentialBackoffWithJitterParameters
throttledParameters
Kısıtlanmış durumlarda her yeniden deneme arasındaki gecikmeyi hesaplamak için kullanılan yeniden deneme parametreleri.
throttledParameters: ExponentialBackoffWithJitterParameters
Özellik Değeri
ExponentialBackoffWithJitterParameters
Yöntem Ayrıntıları
nextRetryTimeout(number, boolean)
Her yeni yeniden denemede kesin olmayan bir şekilde yeniden denemeden önce beklenmesi gereken aralığı hesaplar.
function nextRetryTimeout(retryCount: number, isThrottled: boolean): number
Parametreler
- retryCount
-
number
Geçerli yeniden deneme kesin değil.
- isThrottled
-
boolean
Azure IoT hub'ını azaltma işlemlerinin olup olmadığını gösteren Boole değeri.
Döndürülenler
number
Milisaniye cinsinden yeniden denemeyi denemeden önce beklenmesi gereken süre.
shouldRetry(Error)
Bağımsız değişken olarak geçirilen hataya bağlı olarak, bir hatanın geçici olup olmadığını ve işlemin yeniden denenip denenmeyeceğini belirler.
function shouldRetry(error: Error): boolean
Parametreler
- error
-
Error
İşlem tarafından karşılaşılan hata.
Döndürülenler
boolean
İşlemin yeniden denenip denenmeyeceği.