sendDefaultImpl call timeout

报错一:

Connected to the target VM, address: '127.0.0.1:53513', transport: 'socket'
Exception in thread "main" org.apache.rocketmq.remoting.exception.RemotingTooMuchRequestException: sendDefaultImpl call timeout
    at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.sendDefaultImpl(DefaultMQProducerImpl.java:588)
    at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1223)
    at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1173)
    at org.apache.rocketmq.client.producer.DefaultMQProducer.send(DefaultMQProducer.java:214)
    at com.example.demo.romq.SyncProducer.main(SyncProducer.java:27)
19:54:16.024 [NettyClientSelector_1] INFO RocketmqRemoting - closeChannel: close the connection to remote address[] result: true

解决:

加入 测试代码加入  import com.alibaba.fastjson.JSON;

这个绝对够坑!!!JSON 不管你用不用到都要加入(猜想是内部连接解析需要)

package com.example.demo.romq;

import org.apache.rocketmq.client.producer.DefaultMQProducer;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.common.message.Message;
import org.apache.rocketmq.remoting.common.RemotingHelper;

import com.alibaba.fastjson.JSON;

/**
 * @author gosaint
 */
public class SyncProducer {
    public static void main(String[] args) throws Exception {
        DefaultMQProducer producer = new
                DefaultMQProducer("please_rename_unique_group_name");
        producer.setNamesrvAddr("192.168.3.133:9876");
        producer.start();
        for (int i = 0; i < 100; i++) {
            Message msg = new Message("newTopic",
                    "TagA" ,
                    ("Hello RocketMQ " +
                            i).getBytes(RemotingHelper.DEFAULT_CHARSET)
            );
            SendResult sendResult = producer.send(msg);
            System.out.printf("%s%n", sendResult);
        }
        producer.shutdown();
    }
}

引申

启动(如果启动不加指明id也可能报上面的错)

nohup sh ./bin/mqnamesrv & 
nohup sh ./bin/mqbroker -n 192.168.3.133:9876  autoCreateTopicEnable=true > broker.log 2>&1 &

关闭 

./bin/mqshutdown broker
./bin/mqshutdown namesrv

报错二:

org.apache.rocketmq.client.exception.MQClientException: the specified group[com.hean.iot.device.sent.SentActionCommandService] contains illegal characters, allowing only ^[%|a-zA-Z0-9_-]+$

解决:

 rocketmq 的 topic 命名不规范(或者没有定义topic)的错误,命名中只能包含以下字符(这是正则表达式的格式):^[%|a-zA-Z0-9_-]+$

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cy谭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值