2014-02-25 119 views
1

在我的代码中,我使用循环内的recieveMessageResponse.RecieveMessageResult.Message[i]来读取SQS消息结果。我想知道是否有一个选项来限制可从客户端读取的队列消息的数量?SQS消息请求限制

我担心有数千个队列消息,每次我的图像处理服务器完成处理图像时,都需要重新获取队列结果。这意味着我的EC2服务器需要检索数千个需要处理的图像的队列数据。

我正在使用.NET的C#SDK。

回答

1

您可以在任何时间设置您想要收到的限制,最大值为10--这是默认值(和最大值)。你永远不会超过10个,所以你不必担心会得到太多。

现在消息在队列中,您可以接收它(从队列中检索它 )。当请求从队列中获取消息时, 无法指定要获取的消息。您只需指定要获取的最大邮件数量(最多10个),并且Amazon SQS返回 直到该最大数量。

http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSGettingStartedGuide/ReceiveMessage.html

http://docs.aws.amazon.com/sdkfornet1/latest/apidocs/html/T_Amazon_SQS_Model_ReceiveMessageRequest.htm