我正在使用Spring Cloud API提供的@SqsListener来使用来自FIFO队列的消息。我想根据特定的消息组ID使用消息。不确定在何处配置此设置。
我尝试阅读AWS Spring Cloud文档并做了一些Google搜寻,但是找不到答案或示例。
我的注释如下:
@SqsListener(value = orderQueue, deletionPolicy = SqsMessageDeletionPolicy.ON_SUCCESS)
我有以下SQS配置:
public QueueMessagingTemplate queueMessagingTemplate(AmazonSQSAsync amazonSQSAsync) {
return new QueueMessagingTemplate(amazonSQSAsync);
}
并使用以下依赖项:
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-aws</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-aws-messaging</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
我主要是在寻找有关如何配置@SqsListener以根据消息组ID读取消息的答案。
答案 0 :(得分:0)
我认为,即使AWS sdk也不提供通过其groupId使用消息的方法。 groupId基本上只是一种在Fifo队列中构建消息集群的机制。然后,可以保证群集中的邮件按发送顺序进行发送。