开发人员使用 AWS Step Functions,其中每个步骤都调用一个 Lambda 函数。状态机在 GetResource 任务中因 IllegalArgumentException 或 TooManyRequestsException 而失败。要求:当发生 IllegalArgumentException 时,状态机应立即停止。当发生 TooManyRequestsException 时,状态机应在等待 10 秒后重试 GetResource 任务一次;如果该重试失败,状态机应停止。开发人员如何在不向状态机添加额外步骤的情况下实现 Lambda 重试行为?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 向 GetResource 状态添加一个 Retry 策略。将 Retry 配置为错误类型 TooManyRequestsException,间隔 10 秒,最大尝试次数 1。.
为什么这是答案
正确答案是向 GetResource 状态添加一个 Retry 策略。Step Functions 允许在状态定义中直接配置重试策略,以处理瞬态错误。通过为 TooManyRequestsException 配置重试策略,指定 10 秒的间隔和最大重试次数为 1,可以实现在不添加额外状态的情况下,对特定错误进行一次重试并等待 10 秒。如果重试失败,状态机将停止,这符合题目要求。 其他选项不符合“不向状态机添加额外步骤”的要求或无法正确实现所需逻辑: 在 GetResource 状态之后添加一个 Delay 状态,这会增加额外的步骤。 向 GetResource 状态添加一个 Catcher 并将下一个状态设置为 GetResource,这会创建无限循环或需要额外的逻辑来限制重试次数,并且 Catcher 主要用于错误处理和路由,而不是直接实现重试逻辑。 复制 GetResource 状态并将其命名为 TryAgain,这也会增加额外的步骤。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡