AWS 无服务器异步事件提交与 SQS 队列
什么是 AWS SQS
AWS SQS 代表 **AWS 简单队列服务**。
它在组件之间交换消息。
**组件** 是具有自身行为和数据的软件的一部分。
AWS SQS 如何运作
AWS SQS 分步骤工作
- 消息被添加到队列中
- 消息从队列中取出
- 消息被处理
- 消息从队列中删除
了解有关 AWS SQS 的更多信息
在此处阅读有关 AWS SQS 简介的信息在此处阅读有关 AWS SQS 概述的信息
在此处阅读有关 AWS SQS 限制的信息
AWS SQS 视频
W3schools.com 与 AWS Web Services 合作,为我们的学生提供数字培训内容。
使用 SQS 队列的异步事件提交
Amazon SQS 在 Lambda 和 API 请求之间创建异步连接。
它满足请求,无论 Lambda 函数运行多长时间。
SQS 队列在内置重试的支持下备份,以防任何队列出现故障。
Lambda 持有一个客户端连接,直到数据可用。
此过程称为 **长轮询**。
异步事件提交的工作原理
当客户端发送请求时,它会通过 API 网关。
API 网关将请求发送到 Amazon SQS 并接收消息 ID。
使用消息 ID,客户端可以跟踪消息。
消息存储在 Lambda 轮询的队列中。
当 Lambda 在队列中找到新消息时,它会调用 Lambda 函数。
然后 Lambda 函数处理消息。
相关阅读
AWS Cloud Lambda将 AWS Lambda 与 Amazon SQS 结合使用
标准队列与 FIFO 队列
Amazon SQS 有两种类型的队列。**标准队列** 和 **FIFO 队列**。
FIFO 代表 **先进先出**。
这意味着先进入队列的数据应该先检索。
下表显示了两者之间的差异。
FIFO | 标准 |
---|---|
每个 API 操作可以每秒传递 300 条消息 | 每秒可以传递几乎无限数量的消息 |
可以多次传递消息 | 可以多次传递消息 |
消息顺序根据组 ID 保证 | 消息顺序不保证 |