aws-step-functions - 需要了解step function重试机制

标签 aws-step-functions

也许这个问题可以很快得到解答。 我正在努力在步骤函数中添加重试机制。我想以 1 小时左右的间隔继续重试失败的事件 24 小时。

我在这里详细介绍了“错误后重试”部分: https://docs.aws.amazon.com/step-functions/latest/dg/concepts-error-handling.html 它表示“每次尝试期间重试间隔增加的乘数(默认为 2.0)”。 并且还给出了 3 秒后第一次重试和 4.5 秒后下一次重试的示例,因为 BackoffRate 为 1.5。

这不是指数退避吗? 因为,在同一页面上的“使用重试处理失败”部分下,它表示退避将以指数方式应用。

最佳答案

以下是重试间隔的工作原理:

间隔 = IntervalSeconds*(BackoffRate)^(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

关于aws-step-functions - 需要了解step function重试机制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67914610/

相关文章:

aws-step-functions - AWS 步骤函数 : custom end state for choices

amazon-web-services - 如何使用 Terraform 定义 cloundwatch 事件规则来触发 StepFunction statemachine

aws-step-functions - 带有动态步骤的AWS步骤功能

json - 有没有办法将请求的 header 和正文传递到 aws 步骤函数管道?

javascript - 无权承担所提供的角色

aws-step-functions - AWS Step Functions 是否登录 CloudWatch

amazon-web-services - AWS 状态中 If 条件的替代

amazon-web-services - 单元测试AWS : step function

python - 使用 Python Lambda 处理 AWS Step Function 中的意外错误的最佳实践是什么?

amazon-web-services - AWS Step Function 处理 Lambda.Unknown