【问题标题】:AWS Step functions Retry logic, maximum IntervalSeconds?AWS Step 函数重试逻辑,最大 IntervalSeconds?
【发布时间】:2021-05-22 07:39:32
【问题描述】:

我正在使用 AWS Step 功能步骤,更具体地说是错误处理。

在此文档中:https://docs.aws.amazon.com/step-functions/latest/dg/concepts-error-handling.html,它提到如果一个步骤无法重试该步骤,我们可以使用Retry 子句:

"Retry": [ {
   "ErrorEquals": [ "States.Timeout" ],
   "IntervalSeconds": 3,
   "MaxAttempts": 2,
   "BackoffRate": 1.5
} ]

我可以设置的最大IntervalSecondsMaxAttempts 是多少?我希望能够重试 2-4 天,每 4 小时重试一次。是否可以将这些字段设置为如此高的值?示例:

"Retry": [ {
   "ErrorEquals": [ "States.ALL" ],
   "IntervalSeconds": 14400,
   "MaxAttempts": 12,
   "BackoffRate": 1
} ]

【问题讨论】:

  • 嗨@RJK,一个快速的问题是指数重试还是增量重试?因为,在这个例子之后,在同一页面上,在“使用重试处理失败”部分下,它说退避将呈指数级应用。任何想法?上面的代码是否按照您的预期工作,我认为第一次尝试是 14400 秒,下一次尝试是 14401 秒,下一次尝试是 14402 秒等等?

标签: aws-step-functions


【解决方案1】:

IntervalSecondsMaxAttempts 的最大值是 99999999。 我在文档中没有看到任何提及,但您可以通过尝试在控制台中或使用 API 创建示例状态机来进行验证。即

{
    "Comment": "A Retry example of the Amazon States Language using an AWS Lambda Function",
    "StartAt": "HelloWorld",
    "States": {
        "HelloWorld": {
            "Type": "Task",
            "Resource": "arn:aws:lambda:REGION:ACCOUNT_ID:function:FUNCTION_NAME",
            "Retry": [
                {
                    "ErrorEquals": ["CustomError"],
                    "IntervalSeconds": 99999999,
                    "MaxAttempts": 99999999,
                    "BackoffRate": 2.0
                },
                {
                    "ErrorEquals": ["States.TaskFailed"],
                    "IntervalSeconds": 99999999,
                    "MaxAttempts": 99999999,
                    "BackoffRate": 2.0
                },
                {
                    "ErrorEquals": ["States.ALL"],
                    "IntervalSeconds": 99999999,
                    "MaxAttempts": 99999999,
                    "BackoffRate": 2.0
                }
            ],
            "End": true
        }
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-27
    • 1970-01-01
    • 2022-11-08
    • 2022-10-06
    • 2018-09-19
    • 2017-12-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多