Spring Boot使用RabbitMq消费数据较慢解决思路

Spring Boot使用RabbitMq消费数据较慢解决思路-unack

Spring Boot使用RabbitMq消费数据较慢解决思路

在实际项目中我们使用消息队列Mq,一般情况下是多个生产者对应一个消费者,此时消费者这边的压力会大大增加,消费速度跟不上生产速度,就需要提高消费者的消费速度,在Spring Boot中,消费者默认是单线程消费的,此时需要根据我们实际的服务器性能进行合理的采用并发消费数据即可!设置并发线程数量,请参考线程池调优

以下就是在Sping Boot中设置Mq的并发操作:

RabbitMq消费者工厂配置:

@Configuration
public class RabbitMqConfig {
    //并发数量:根据实际的服务器性能进行配置即可
    public static final int DEFAULT_CONCURRENT = 20;	
    @Bean("customContainerFactory")
    public SimpleRabbitListenerContainerFactory containerFactory(SimpleRabbitListenerContainerFactoryConfigurer configurer,
                                                                 ConnectionFactory connectionFactory) {
        SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
        factory.setConcurrentConsumers(DEFAULT_CONCURRENT);
        factory.setMaxConcurrentConsumers(DEFAULT_CONCURRENT);
        configurer.configure(factory, connectionFactory);
        return factory;
    }
}

消费者具体使用:

@RabbitListener(queues = {"test-queue"}, containerFactory = "customContainerFactory")

以上就是在Spring Boot中设置多线程并发消费的思路以及相关配置操作!若有不足之处,请您补充!

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胤墨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值