gpt4 book ai didi

java - 如何使用 Spring Boot 让多个线程从 RabbitMQ 队列中获取数据?

转载 作者:行者123 更新时间:2023-12-02 01:38:41 25 4
gpt4 key购买 nike

我们的应用程序使用 RabbitMQ 提供的多个队列中的数据。为了提高吞吐量,我们为每个队列启动多个线程,这些线程会阻塞从这些队列中获取数据。

对于新服务,我们希望使用 Spring Boot,并且每个队列有多个线程从这些队列中获取数据。以下是用于处理从某个队列到达的数据的规范 Spring Boot 代码:

@StreamListener(target = Processor.INPUT)
@SendTo(Processor.OUTPUT)
public Message<SomeData> process(Message<SomeData> message) {
SomeData result = service.process(message.getPayload());
return MessageBuilder
.withPayload(result)
.copyHeaders(message.getHeaders())
.build();
}

现在的问题是如何让 Spring Boot 生成多个线程来服务一个队列而不是单个线程。吞吐量对于我们的应用程序非常关键,因此需要这样做。

最佳答案

检查available properties ,搜索rabbitmq。

spring.rabbitmq.listener.simple.concurrency= # Minimum number of listener invoker threads

看起来很有希望

关于java - 如何使用 Spring Boot 让多个线程从 RabbitMQ 队列中获取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54803033/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com