【问题标题】:SQS queue listener (Springboot)SQS 队列监听器(Spring Boot)
【发布时间】:2021-10-15 05:24:40
【问题描述】:

如何使用 SQS 控制请求。假设在 SQS 中同时提交了 4 个请求,那么一次只需要处理一个。一旦第一个完成,从进程中的队列中获取第二个请求,这个过程需要继续。

我在 springboot 中使用 @SqsListener 来获取消息负载。

【问题讨论】:

  • 究竟是什么问题?
  • 我不知道如何控制请求。知道我们如何实现这一目标

标签: amazon-web-services spring-boot spring-cloud amazon-sqs spring-cloud-aws


【解决方案1】:

您可以定义一个SimpleMessageListenerContainerFactory bean 并配置监听器行为如下:

@Bean
public SimpleMessageListenerContainerFactory simpleMessageListenerContainerFactory(AmazonSQSAsync amazonSqs) {
    SimpleMessageListenerContainerFactory factory = new SimpleMessageListenerContainerFactory();
    [...]
    factory.setAmazonSqs(amazonSqs);
    factory.setMaxNumberOfMessages(1);
    [...]

    return factory;
}

【讨论】:

  • 您好尝试了上述方法,但没有奏效。那就是并行执行所有请求。
猜你喜欢
  • 1970-01-01
  • 2016-10-07
  • 2019-08-05
  • 2018-08-22
  • 1970-01-01
  • 2018-10-27
  • 2019-07-03
  • 2015-04-18
  • 2017-07-30
相关资源
最近更新 更多