java - 1个Topic有4个队列,只能消费1个

标签 java rocketmq

有一些RocketMQ主题,但只有一个主题有4个队列,只能消费1个队列。

RocketMQ 4.2.0 Java 1.8

消费者组配置:

    depthConsumerGroup.setNamesrvAddr(rocketMQConfig.getNameServers());
    depthConsumerGroup.setConsumeThreadMin(64);
    depthConsumerGroup.setConsumeThreadMax(128);
    depthConsumerGroup.setAdjustThreadPoolNumsThreshold(500);
    depthConsumerGroup.setMessageModel(MessageModel.CLUSTERING);
       depthConsumerGroup.setConsumeFromWhere(ConsumeFromWhere.CONSUME_FROM_LAST_OFFSET);

当我重置主题时间戳并重新启动应用程序时。所有队列都会被消耗。但是运行一段时间,只有一个队列会被消耗。

最佳答案

检查两件事:

  • 检查您是否向一个队列发送了一些有序的消息。其他人空着。所以你只能消耗 1 个队列
  • 检查规则:一个consumer-group中的所有consumer-instances必须具有相同的pub-sub(consumerGroup-topic-tag必须相同,否则无法正确分配队列)

关于java - 1个Topic有4个队列,只能消费1个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57787814/

相关文章:

java - 用于方法多参数注入(inject)的自定义 InjectableProvider,解析错误

java - 如何避免 JavaFX 投影效果覆盖在它旁边的按钮并且无法按下按钮?

java - 如何在RocketMQ中配置2个broker之间的消息 channel

apache-kafka - Apache Pulsar 与 Apache RocketMQ

java - RocketMQ名称服务器启动错误--无法找到或加载主类

java - 在 Java 中生成 OAuth 签名

java - 如何使我的 JComponent 符合 JFrame.pack 和布局管理器?

Java正则表达式包含2个值(内部相同的值)