关于Rabbit的一个疑问
来源:9-10 本章小结
LBruce
2020-11-19
场景:
服务器配置均8核16G,公网带宽3Mbps,测试时均走内网
1台Producer,开启200个线程,维持3分钟投递消息,最终总消息在百万级。
1台RabbitMQ,exchange为Topic模式,且只有一个Queue绑定,exchange和queue都开启持久化
1台Consumer,开启手动ACK,concurrency为20,max-concurrency为30
问题:
发现在Prodcuer进行投递的时候,几乎没有收到Consumer的手动ACK,监控面板只看到收到消息的速率和磁盘写入速率
只有当Producer结束消息投递后,才能看到Consumer消费速率和磁盘读入速率。
但如果关闭持久化的话,则是Producer一边投递,Consumer一边消费,几乎没有消息滞留在RabbitMQ。
不明白为什么开启了持久化的时候,不能Producer一边投递,Consumer一边消费,个人猜想是RabbitMQ的某种机制???请老师解答一下,谢谢老师。
写回答
1回答
-
应该是发送和消费处理是可以的,和持久化没有关系,估计是你操作仿石漆,测试有问题
00
相似问题