RocketMQ订阅不到消息的问题总结

今日公司在使用RocketMQ做的中间件,发现有消息订阅到:
在环境正常的情况下,影响消息订阅不上的原因有:
1.group
2.topic
3.tag

在同一个消费者里面这三个值必须各自唯一,不能两两相等,或者三个值一样
例如:
错误的代码:

public static void main(String[] args)
        throws MQClientException {
        DefaultMQProducer producer = new DefaultMQProducer("group");//group名称
        producer.setNamesrvAddr("localhost:9876");
        producer.start();
        try {
            Message message = new Message("topic2", "group", "message".getBytes());//这里的tag值配置和上面的组的配置一样
            SendResult result = producer.send(message);
            System.out.println("tag2 >>> :" + result);
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        producer.shutdown();
    }

正确的:

public static void main(String[] args)
        throws MQClientException {
        DefaultMQProducer producer = new DefaultMQProducer("group");//group名称
        producer.setNamesrvAddr("localhost:9876");
        producer.start();
        try {
            Message message = new Message("topic2", "tag2", "tag2".getBytes());//topic, tag名称
            SendResult result = producer.send(message);
            System.out.println("tag2 >>> :" + result);
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        producer.shutdown();
    }

猜你喜欢

转载自blog.csdn.net/yanwendonge/article/details/88747197