菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

AWS 无服务器错误处理:以 SQS 作为事件源


以 AWS SQS 作为事件源进行错误处理

如果 Amazon SQS 调用失败或超时,消息仍然可见。

Lambda 会继续重试该消息,直到成功或队列达到其接收限制。

为被拒绝的消息设置死信队列是一个好习惯。

需要进行性能测试以找到适合您操作的良好解决方案。


AWS SQS 与 Lambda

在 Lambda 函数上,您可以指定超时。

在 SQS 队列上,您可以定义可见性超时。

您还可以定义队列的批处理大小,每批一到十条消息。

批处理大小会影响您的函数和可见性超时设置。

对于快速处理,较大的批处理大小可以提高效率。

对于较长的处理,较小的批处理大小可能更好。


以 AWS SQS 作为事件源进行错误处理视频

W3schools.com 与 Amazon Web Services 合作,为我们的学生提供数字培训内容。


AWS SQS 错误处理的工作原理

如果您的函数每 1 秒处理一条消息,那么 10 条消息的批处理将需要 10 秒才能完成。

在这种情况下,您可以使用 20 秒的超时。

如果一个函数每 2 分钟处理一条消息,则相同的批处理将需要 20 分钟才能完成。

由于 Lambda 的最大超时为 15 分钟,因此该批处理将在未处理所有消息的情况下终止。

未处理的消息将重新出现在队列中。


消息可见性

您必须设置可见性超时,以便为 Lambda 函数提供足够的时间来完成消息批处理。

当函数被节流时,您在可见性超时中提供一些缓冲区以适应 Lambda 调用重试。

建议将可见性超时设置为函数超时的 6 倍。


AWS Serverless 练习

通过练习来测试自己

练习

Lambda 何时会继续重试处理消息?

1. Until it 
2. Untill the  reaches its limit

开始练习


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持