rocketmq-externals
rocketmq-externals copied to clipboard
Is DefaultMQPullConsumer use RmqProducerGroup correct in ConnectUtil class?
line 87 in ConnectUtil
public static DefaultMQProducer initDefaultMQProducer(ConnectConfig connectConfig) {
DefaultMQProducer producer = new DefaultMQProducer();
producer.setNamesrvAddr(connectConfig.getNamesrvAddr());
producer.setInstanceName(createInstance(connectConfig.getNamesrvAddr()));
producer.setProducerGroup(createGroupNameV2(connectConfig.getRmqProducerGroup()));
producer.setSendMsgTimeout(connectConfig.getOperationTimeout());
producer.setMaxMessageSize(RuntimeConfigDefine.MAX_MESSAGE_SIZE);
producer.setLanguage(LanguageCode.JAVA);
return producer;
}
public static DefaultMQPullConsumer initDefaultMQPullConsumer(ConnectConfig connectConfig) {
DefaultMQPullConsumer consumer = new DefaultMQPullConsumer();
consumer.setNamesrvAddr(connectConfig.getNamesrvAddr());
consumer.setInstanceName(createInstance(connectConfig.getNamesrvAddr()));
87 consumer.setConsumerGroup(createGroupNameV2(connectConfig.getRmqProducerGroup()));
consumer.setMaxReconsumeTimes(connectConfig.getRmqMaxRedeliveryTimes());
consumer.setBrokerSuspendMaxTimeMillis(connectConfig.getBrokerSuspendMaxTimeMillis());
consumer.setConsumerPullTimeoutMillis((long) connectConfig.getRmqMessageConsumeTimeout());
return consumer;
}
In the current design, different workerTasks handle different topics. One workerTask corresponds to one pullConsumer, which improves concurrency to a certain extent, so there is no problem using different consumerGroups.
In the current design, different workerTasks handle different topics. One workerTask corresponds to one pullConsumer, which improves concurrency to a certain extent, so there is no problem using different consumerGroups.
it's weird use producerGroup to create PullConsumer, consumerGroup config is redundant.