当有backoffCoefficient设置时,如何为持久函数计算下一个重试时间?

问题描述 投票:0回答:1

如果我的活动功能失败,我希望它自动重试。我希望它在几秒钟之后首先重试然后重复。最后一次尝试应该在大约4天之后。最初的重试应该是几秒钟,然后频率应该退回,以便最后它每4小时左右尝试一次。如何设置RetryOptions的参数来实现此目的?即在给定以下参数的情况下,计算重试次数的公式是什么:

firstRetryIntervalInMilliseconds = 3000
maxNumberOfAttempts  = 100
backoffCoefficient  = 2
azure-durable-functions
1个回答
1
投票

CallActivityWithRetry使用exponential backoff mechanism来计算重试间隔。 (source code)第n次重试的延迟由以下公式计算:

firstRetryIntervalInMilliseconds * backoffCoefficient ^ n

RetryOptions类有许多可配置的属性,包括MaxRetryIntervalRetryTimeout,它们应该有助于实现所需的重试行为。

© www.soinside.com 2019 - 2024. All rights reserved.