需要了解step函数重试机制
Need to understand step function retry mechanism
也许这个问题可以很快得到解答。
我正在努力在步骤功能中添加重试机制。我想以 1 小时左右的间隔重试失败的 activity 24 小时。
我正在仔细阅读“出错后重试”部分:
https://docs.aws.amazon.com/step-functions/latest/dg/concepts-error-handling.html
它说“每次尝试期间重试间隔增加的乘数(默认为 2.0)”。
并且还给出了 3 秒后第一次重试和 4.5 秒后重试的示例,因为 BackoffRate 是 1.5.
这不是指数退避吗?
因为,在同一页面上,在“使用重试处理失败”部分下,它表示退避将以指数方式应用。
以下是重试间隔的工作原理:
间隔 = IntervalSeconds*(退避率)^(attempt-1)
因此对于此配置:
"Retry": [
{
"ErrorEquals": ["States.ALL"],
"BackoffRate": 2,
"IntervalSeconds": 6,
"MaxAttempts": 6
}
]
我们有这些间隔:
attempt. interval
---------------------------
1 6*(2^0) = 6
2 6*(2^1) = 12
3 6*(2^2) = 24
也许这个问题可以很快得到解答。 我正在努力在步骤功能中添加重试机制。我想以 1 小时左右的间隔重试失败的 activity 24 小时。
我正在仔细阅读“出错后重试”部分: https://docs.aws.amazon.com/step-functions/latest/dg/concepts-error-handling.html 它说“每次尝试期间重试间隔增加的乘数(默认为 2.0)”。 并且还给出了 3 秒后第一次重试和 4.5 秒后重试的示例,因为 BackoffRate 是 1.5.
这不是指数退避吗? 因为,在同一页面上,在“使用重试处理失败”部分下,它表示退避将以指数方式应用。
以下是重试间隔的工作原理:
间隔 = IntervalSeconds*(退避率)^(attempt-1)
因此对于此配置:
"Retry": [
{
"ErrorEquals": ["States.ALL"],
"BackoffRate": 2,
"IntervalSeconds": 6,
"MaxAttempts": 6
}
]
我们有这些间隔:
attempt. interval
---------------------------
1 6*(2^0) = 6
2 6*(2^1) = 12
3 6*(2^2) = 24