ExponentialBackOffWithJitter class

ينفذ التراجع الأسي باستخدام استراتيجية إعادة المحاولة Jitter. الدالة لحساب الفاصل الزمني التالي هي التالية (x هي إعادة المحاولة xth): F(x) = min(Cmin+ (2^(x-1)-1) * rand(C * (1 – Jd), C*(1-Ju)), Cmax)

المنشئون

ExponentialBackOffWithJitter(boolean, ErrorFilter)

تهيئة مثيل جديد من ExponentialBackOffWithJitter الفئة.

الخصائص

immediateFirstRetry

منطقي يشير إلى ما إذا كان يجب أن تكون إعادة المحاولة الأولى فورية (إذا تم تعيينها إلى true) أو بعد تأخير normalParameters.c (إذا تم تعيينها إلى false).

normalParameters

إعادة محاولة المعلمات المستخدمة لحساب التأخير بين كل إعادة محاولة في المواقف العادية (أي غير مقيد).

throttledParameters

إعادة محاولة المعلمات المستخدمة لحساب التأخير بين كل إعادة محاولة في المواقف المقيدة.

الأساليب

nextRetryTimeout(number, boolean)

يحسب الفاصل الزمني للانتظار قبل إعادة المحاولة في كل إعادة محاولة مبدئية جديدة.

shouldRetry(Error)

استنادا إلى الخطأ الذي تم تمريره كوسيطة، يحدد ما إذا كان الخطأ عابرا وما إذا كان يجب إعادة محاولة العملية أم لا.

تفاصيل المنشئ

ExponentialBackOffWithJitter(boolean, ErrorFilter)

تهيئة مثيل جديد من ExponentialBackOffWithJitter الفئة.

new ExponentialBackOffWithJitter(immediateFirstRetry?: boolean, errorFilter?: ErrorFilter)

المعلمات

immediateFirstRetry

boolean

منطقي يشير إلى ما إذا كان يجب أن تكون إعادة المحاولة الأولى فورية (افتراضية) أو انتظر الفاصل الزمني الأول (قيمة c).

errorFilter

ErrorFilter

تفاصيل الخاصية

immediateFirstRetry

منطقي يشير إلى ما إذا كان يجب أن تكون إعادة المحاولة الأولى فورية (إذا تم تعيينها إلى true) أو بعد تأخير normalParameters.c (إذا تم تعيينها إلى false).

immediateFirstRetry: boolean

قيمة الخاصية

boolean

normalParameters

إعادة محاولة المعلمات المستخدمة لحساب التأخير بين كل إعادة محاولة في المواقف العادية (أي غير مقيد).

normalParameters: ExponentialBackoffWithJitterParameters

قيمة الخاصية

ExponentialBackoffWithJitterParameters

throttledParameters

إعادة محاولة المعلمات المستخدمة لحساب التأخير بين كل إعادة محاولة في المواقف المقيدة.

throttledParameters: ExponentialBackoffWithJitterParameters

قيمة الخاصية

ExponentialBackoffWithJitterParameters

تفاصيل الأسلوب

nextRetryTimeout(number, boolean)

يحسب الفاصل الزمني للانتظار قبل إعادة المحاولة في كل إعادة محاولة مبدئية جديدة.

function nextRetryTimeout(retryCount: number, isThrottled: boolean): number

المعلمات

retryCount

number

إعادة المحاولة الحالية مبدئيا.

isThrottled

boolean

منطقي يشير إلى ما إذا كان مركز Azure IoT هو عمليات تقييد.

المرتجعات

number

وقت الانتظار قبل محاولة إعادة المحاولة بالمللي ثانية.

shouldRetry(Error)

استنادا إلى الخطأ الذي تم تمريره كوسيطة، يحدد ما إذا كان الخطأ عابرا وما إذا كان يجب إعادة محاولة العملية أم لا.

function shouldRetry(error: Error): boolean

المعلمات

error

Error

الخطأ الذي واجهته العملية.

المرتجعات

boolean

ما إذا كان يجب إعادة محاولة العملية أم لا.