AWS-SQS:如何设置maxConcurrentConsumers?

时间:2016-09-01 14:29:15

标签: amazon-web-services spring-boot message-queue spring-cloud amazon-sqs

我们有一个要求,我们需要使用SQS从头到尾一次处理1条消息(不是严格的顺序)。反正我们可以在SQS中将maxConcurrentConsumer设置为1吗?

我正在查看文档,但找不到要设置的属性。在亚马逊控制台上,我在配置队列菜单中看不到此属性。在消息检索时,我们可以具体说明我们想要在一次轮询中读取多少消息,但由于AWS自动扩展功能可以创建多个消费者(实际上是Springboot微服务),我们不能通过将此限制设置为1来依赖它。

P.S。 :我们无法控制邮件发件人,它可以向SQS发送许多邮件。

1 个答案:

答案 0 :(得分:2)

没有设置可以控制并发SQS使用者的最大数量。正如您所提到的,通常的做法是根据队列的大小水平扩展队列使用者。如果出于某种原因,您的要求是拥有单个队列使用者,那么您将不得不从其他微服务中删除或禁用队列使用者,因此您只有一个使用者。

但是,我鼓励您重新考虑设计,仅允许单个队列使用者,因为该实现无法扩展。