本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
亚马逊SQS批量操作
Amazon SQS 提供批量操作,可帮助您降低成本,并通过单个操作处理多达 10 条消息。这些批处理操作包括:
使用批处理操作,您可以在一次API调用中执行多项操作,这有助于优化性能并降低成本。您可以使用查询API或任何支持 Amazon 批处理操作 Amazon SDK的功能来利用SQS批处理功能。
重要详细信息
-
消息大小限制:在一次
SendMessageBatch
调用中发送的所有消息的总大小不能超过 262144 字节(256KiB)。 -
权限:您无法显式设置
SendMessageBatch
、DeleteMessageBatch
或ChangeMessageVisibilityBatch
的权限。相反,设置SendMessage
、DeleteMessage
或ChangeMessageVisibility
操作的权限会同时设置其对应的批处理版本的权限。 -
控制台支持:Amazon SQS 控制台不支持批量操作。必须使用查询API或 Amazon SDK来执行批量操作。
批处理消息操作
为了进一步优化成本和效率,请考虑以下批处理消息操作的最佳实践:
-
批量API操作:使用 Amazon SQS 批处理API操作发送、接收和删除消息,并通过单个操作更改多条消息的可见性超时。这减少了API通话次数和相关成本。
-
客户端缓冲和长轮询数:将长轮询与 Amazon SDK for Java中的缓冲异步客户端一起使用,从而将客户端缓冲与请求批处理功能相结合。这种方法有助于最大限度地减少请求数量并优化对大量消息的处理。
注意
Amazon SQS 缓冲异步客户端目前不支持FIFO队列。