我的 AWS Lambda 函数不断收到针对单一事件的多个调用请求。如何防止我的 Lambda 函数从同一事件中多次调用?
为了防止重复调用 Lambda 函数,请根据您使用的调用类型执行以下操作。
**注意:**对于同步调用,调用 Lambda 函数的客户端和 AWS 服务负责执行重试。对于异步调用,Lambda 会在出错时自动重试,并且两次重试之间会有延迟。
查看您的 Lambda 函数的 Amazon CloudWatch Logs 以验证以下内容:
根据您的使用案例,执行以下操作之一:
对于返回错误或超时且具有相同请求 ID 的重复调用
**注意:**返回错误或超时且具有相同请求 ID 的重复调用表示 Lambda 服务重试该函数。
为异步调用配置错误处理,以减少 Lambda 函数重试失败的异步调用请求次数。
有关更多信息,请参阅 AWS Lambda 中的错误处理和自动重试。
对于没有返回错误或超时的重复调用
**注意:**未返回错误或超时的重复调用表示客户端重试。
**注意:**根据每项服务的事件源映射,同步调用重试行为因 AWS 服务而异。有关更多信息,请参阅事件驱动的调用。
使用 CloudTrail 事件历史记录查看事件
使用 AWS Lambda 函数的最佳实践
Lambda 函数扩展
为什么我的 Lambda 函数重试有效的 Amazon SQS 消息并将其放入死信队列中?