RocketMQ常見異常及處理方案


The producer service state not OK, SHUTDOWN_ALREADY,RocketMQ異步發送No route info of this topic, topic_e

demo是照着網上寫的,同步和單向發送都沒有問題,異步發送就有問題,代碼如下


public class AsynProducerTest {
    public static void main(String args[]) throws Exception {
        DefaultMQProducer defaultMQProducer = new DefaultMQProducer("demo_provider_group12");
        defaultMQProducer.setNamesrvAddr("127.0.0.1:9876");
        //defaultMQProducer.setInstanceName("myProducer1");
        defaultMQProducer.setRetryTimesWhenSendAsyncFailed(3);
        defaultMQProducer.setVipChannelEnabled(false);
        defaultMQProducer.start();
        for (int i = 0; i < 100; i++) {
            Message message = new Message("topic_example", "tag_a", ("hello AsynRocketMq").getBytes(RemotingHelper.DEFAULT_CHARSET));
            defaultMQProducer.send(message, new SendCallback() {
                @Override
                public void onSuccess(SendResult sendResult) {
                    System.out.println(sendResult.getMsgId());
                }
                @Override
                public void onException(Throwable throwable) {
                    throwable.printStackTrace();
                }
            });

        }
//        **defaultMQProducer.shutdown();**
    }
}

解決方案:

因為有個回調函數,所以這里關閉了就出錯了,注釋掉就可以了

The broker does not support consumer to filter message by SQL92

解決方案:

修改集群配置文件(*如果是集群環境,非集群環境同理修改配置文件)
/usr/local/software/rocketmq/conf/2m-2s-sync/broker-a.properties
/usr/local/software/rocketmq/conf/2m-2s-sync/broker-b-s.properties
/usr/local/software/rocketmq/conf/2m-2s-sync/broker-b.properties
/usr/local/software/rocketmq/conf/2m-2s-sync/broker-a-s.properti

1. 打開文件

vim /usr/local/software/rocketmq/conf/2m-2s-sync/broker-a.properties

2. 如下圖所示添加enablePropertyFilter=true

3. 重啟

nohup sh mqbroker -c /usr/local/software/rocketmq/conf/2m-2s-sync/broker-a.properties &


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM