AWS SQS
概述 Amazon Simple Queue Service(SQS)是 AWS 的托管消息队列:生产者把消息发到队列,消费者拉取并处理。无需自建 RabbitMQ/Kafka 集群,按 API 请求量计费。 常见用途: 服务之间异步解耦(下单后发消息,库存服务慢慢处理) 削峰填谷(突发流量先排队,Worker 按能力消费) 作为其它服务的 Dead Letter Queue(死信队列,DLQ),收纳处理失败的消息 核心概念 概念 说明 Queue 队列本身,有唯一 URL Message 一条消息,最大 1 MiB(超大 payload 可配合 S3) Producer 发送方,调用 SendMessage Consumer 接收方,调用 ReceiveMessage,处理完后 DeleteMessage Visibility Timeout 消息被某消费者取走后,在超时时间内对其它消费者不可见;超时未删除则重新可见,可被再次处理 标准队列 vs FIFO 队列 类型 特点 适用场景 Standard 至少一次投递、可能乱序、吞吐量高 大多数场景;DLQ 通常用标准队列 FIFO 严格顺序、恰好一次(需配置)、吞吐量较低 订单、账务等强顺序场景 EventBridge Scheduler、Lambda 等配置的 DLQ,一般使用 标准队列。 计费与免费额度 SQS 没有队列月租,按 API 请求次数 计费: 永久免费档:每月 100 万次 SQS 请求(各区域合计,不结转) 超出后(标准队列,东京等区域参考价):约 $0.40 / 百万次 请求 计费细节: ...