首先在阿里云的控制面板上配好各个参数,然后一段简单的测试代码:

package com.aliyun.openservices.tcp.heaven.producer;
import com.aliyun.openservices.ons.api.Message;
import com.aliyun.openservices.ons.api.Producer;
import com.aliyun.openservices.ons.api.SendResult;
import com.aliyun.openservices.ons.api.ONSFactory;
import com.aliyun.openservices.ons.api.PropertyKeyConst;
import com.aliyun.openservices.tcp.heaven.MqConfig;import java.util.Date;
import java.util.Properties;public class ProducerTest {public static void main(String[] args) {Properties properties = new Properties();properties.put(PropertyKeyConst.ProducerId, MqConfig.PRODUCER_ID);properties.put(PropertyKeyConst.AccessKey, MqConfig.ACCESS_KEY);properties.put(PropertyKeyConst.SecretKey, MqConfig.SECRET_KEY);properties.setProperty(PropertyKeyConst.SendMsgTimeoutMillis, "6000");properties.put(PropertyKeyConst.ONSAddr,MqConfig.ONSADDR);Producer producer = ONSFactory.createProducer(properties);producer.start();String messageStr = "Hello MQ I'am J-HEAVEN";for (int i = 0; i < 100; i++){Message msg = new Message(MqConfig.TOPIC, MqConfig.TAG, messageStr.getBytes());msg.setKey("ORDERID_" + i);try {SendResult sendResult = producer.send(msg);if (sendResult != null) {System.out.println(new Date() + " Send mq message success. Topic is:" + msg.getTopic() + " msgId is: " + sendResult.getMessageId());}} catch (Exception e) {System.out.println(new Date() + " Send mq message failed. Topic is:" + msg.getTopic());e.printStackTrace();}}producer.shutdown();}
}

MqConfig是一个存放参数变量的类,不给出了。

然后。。。。运行。。。。

    ??????????????报错了????????????????

查看log文件,挑几个重点拿出来:

2018-07-23 16:43:22,022 WARN RocketmqClient - updateTopicRouteInfoFromNameServer Exception
com.aliyun.openservices.shade.com.alibaba.rocketmq.remoting.exception.RemotingTimeoutException: wait response on the channel <112.124.141.191:80> timeout, 3000(ms)at .............................2018-07-23 16:43:22,022 ERROR RocketmqClient - Send message Exception, Message [topic=heaven-mq-test, systemProperties={__KEY=ORDERID_0, __TAG=TEST-TAG}, userProperties=null, body=22]
com.aliyun.openservices.shade.com.alibaba.rocketmq.client.exception.MQClientException: No route info of this topic, heaven-mq-test
See http://rocketmq.apache.org/docs/faq/ for further details.at ................................

一眼就看到了它:MQClientException: No route info of this topic, heaven-mq-test

然后就是各种折腾,网上也没太多相关的信息,大多都是关于自建RocketMQ出现的无法自动 create Topic 的问题,搜到了两个类似的问题,但是都没有人给出正确的解答,都是范范的回答了一下。

然后就是一顿翻文档,翻来覆去也没什么收获,就几个名称怎么可能出错,一路从TOPIC.CONSUMER.PRODUCER折腾到accessKey,差点就想向阿里云提个工单了。。。。。。

没戏  =_=  !!!!!????

慢着!停!上面还有个错来着。。。

com.aliyun.openservices.shade.com.alibaba.rocketmq.remoting.exception.RemotingTimeoutException:
wait response on the channel <112.124.141.191:80> timeout, 3000(ms)

礼貌微笑

试了一下百度,能上。难道?公司的防火墙?我直接访问了MQ的地址:

http://onsaddr-internet.aliyun.com/rocketmq/nsaddr4client-internet

没问题啊。。。。。。。。。。。。。。

难道?不会是???

断开公司的网络(把冰箱门打开),打开手机热点(把大象放进去),连上热点(把冰箱门带上)。

运行:

Mon Jul 23 17:01:35 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF13A418B4AAC274F331650000
Mon Jul 23 17:01:35 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF13A418B4AAC274F332690002
Mon Jul 23 17:01:35 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF13A418B4AAC274F332A00004Process finished with exit code 0

应该是我们公司的防火墙拦截了的TCP协议。

礼貌微笑

=========================================附上简易代码===========================================

package com.aliyun.openservices.tcp.heaven.producer;
import com.aliyun.openservices.ons.api.Message;
import com.aliyun.openservices.ons.api.Producer;
import com.aliyun.openservices.ons.api.SendResult;
import com.aliyun.openservices.ons.api.ONSFactory;
import com.aliyun.openservices.ons.api.PropertyKeyConst;
import com.aliyun.openservices.tcp.heaven.MqConfig;import java.util.Date;
import java.util.Properties;/*** 生成普通消息* @author jiangyqc* 2018年7月24日 09:59:20*/
public class ProducerTest {public static void main(String[] args) {Properties properties = new Properties();properties.put(PropertyKeyConst.ProducerId, MqConfig.PRODUCER_ID);properties.put(PropertyKeyConst.AccessKey, MqConfig.ACCESS_KEY);properties.put(PropertyKeyConst.SecretKey, MqConfig.SECRET_KEY);properties.setProperty(PropertyKeyConst.SendMsgTimeoutMillis, "3000");properties.put(PropertyKeyConst.ONSAddr,MqConfig.ONSADDR);Producer producer = ONSFactory.createProducer(properties);producer.start();String messageStr = "Hello MQ I'am J-HEAVEN";for (int i = 0; i < 10; i++){Message msg = new Message(MqConfig.TOPIC, MqConfig.TAG, messageStr.getBytes());msg.setKey("ORDERID_" + i);try {SendResult sendResult = producer.send(msg);if (sendResult != null) {System.out.println(new Date() + " Send mq message success. Topic is:" + msg.getTopic() + " msgId is: " + sendResult.getMessageId());}} catch (Exception e) {System.out.println(new Date() + " Send mq message failed. Topic is:" + msg.getTopic());e.printStackTrace();}}producer.shutdown();}
}

Tue Jul 24 09:56:15 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF39E018B4AAC2789427620000
Tue Jul 24 09:56:15 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF39E018B4AAC2789427EB0002
Tue Jul 24 09:56:15 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF39E018B4AAC2789428680005
Tue Jul 24 09:56:15 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF39E018B4AAC2789428970008
Tue Jul 24 09:56:15 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF39E018B4AAC2789428D5000B
Tue Jul 24 09:56:15 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF39E018B4AAC278942904000E
Tue Jul 24 09:56:15 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF39E018B4AAC2789429420011
Tue Jul 24 09:56:15 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF39E018B4AAC2789429910014
Tue Jul 24 09:56:16 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF39E018B4AAC2789429C00017
Tue Jul 24 09:56:16 CST 2018 Send mq message success. Topic is:heaven-mq-test msgId is: C0A82BDF39E018B4AAC278942A0D001AProcess finished with exit code 0
package com.aliyun.openservices.tcp.heaven.consumer;import com.aliyun.openservices.ons.api.Action;
import com.aliyun.openservices.ons.api.ConsumeContext;
import com.aliyun.openservices.ons.api.Consumer;
import com.aliyun.openservices.ons.api.Message;
import com.aliyun.openservices.ons.api.MessageListener;
import com.aliyun.openservices.ons.api.ONSFactory;
import com.aliyun.openservices.ons.api.PropertyKeyConst;
import com.aliyun.openservices.tcp.heaven.MqConfig;
/*** 消费普通消息* @author jiangyuqin* 2018年7月24日 09:59:37*/
import java.util.Properties;
public class ConsumerTest {public static void main(String[] args) {Properties properties = new Properties();properties.put(PropertyKeyConst.ConsumerId, MqConfig.CONSUMER_ID);properties.put(PropertyKeyConst.AccessKey, MqConfig.ACCESS_KEY);properties.put(PropertyKeyConst.SecretKey, MqConfig.SECRET_KEY);properties.put(PropertyKeyConst.ONSAddr, MqConfig.ONSADDR);// 集群订阅方式 (默认)// properties.put(PropertyKeyConst.MessageModel, PropertyValueConst.CLUSTERING);// 广播订阅方式// properties.put(PropertyKeyConst.MessageModel, PropertyValueConst.BROADCASTING);Consumer consumer = ONSFactory.createConsumer(properties);consumer.subscribe(MqConfig.TOPIC, MqConfig.TAG, new MessageListener() { //订阅多个 Tagpublic Action consume(Message message, ConsumeContext context) {System.out.println("Receive: " + new String(message.getBody()));return Action.CommitMessage;}});consumer.start();System.out.println("Consumer Started");}
}
Consumer Started
Receive: Hello MQ I'am J-HEAVEN
Receive: Hello MQ I'am J-HEAVEN
Receive: Hello MQ I'am J-HEAVEN
Receive: Hello MQ I'am J-HEAVEN
Receive: Hello MQ I'am J-HEAVEN
Receive: Hello MQ I'am J-HEAVEN
Receive: Hello MQ I'am J-HEAVEN
Receive: Hello MQ I'am J-HEAVEN
Receive: Hello MQ I'am J-HEAVEN
Receive: Hello MQ I'am J-HEAVEN

阿里云MQ服务报错:No route info of this topic相关推荐

  1. 阿里云版rocketmq报异常: No route info of this topic解决方案

    应该先创建topic和group,并在nacos中进行配置. 一开始没想到access和secret也会导致MQClientException: No route info of this topic ...

  2. 记录一次阿里云服务器升级报错

    记录一次阿里云服务器升级报错  ---Email:1261065212@qq.com 系统: # cat /etc/redhat-release CentOS Linux release 7.4.17 ...

  3. 阿里云安装Mysql报错

    阿里云安装Mysql报错: The GPG keys listed for the "MySQL 5.7 Community Server" repository are alre ...

  4. Docker在windows环境 使用阿里云镜像 pull 报错 x509: certificate signed by unknown authority

    本人使用的环境是 windows7 ,使用docker toolbox安装, 使用的是阿里云镜像,使用阿里云镜像相关操作阿里云上有操作步骤 https://cr.console.aliyun.com/ ...

  5. 阿里云yum源报错Peer’s Certificate has expired原因及解决

    问题描述: 从阿里云yum下载docker.repo到本地 yum-config-manager \ --add-repo http://mirrors.aliyun.com/docker-ce/li ...

  6. 阿里云部署vmware报错

    一.现象: 1. 环境: 阿里云 :windows server 2008 r2 vmware: 12.5.9 build-7535481   (VMware® Workstation 12 Pro) ...

  7. IDEA Maven配置了阿里云代理还是报错

    IDEA Maven配置了阿里云代理配置不生效 IDEA Maven代理找不到包 IDEA Maven remote error 我们可能在pom文件中配置了如下内容: <repositorie ...

  8. 连接阿里云RDS数据库报错

    本文列出无法连接RDS实例的最常见报错和解决办法. RDS for MySQL或MariaDB TX连接失败 错误信息 原因和解决办法 ERROR 2003 (HY000): Can't connec ...

  9. Navicat连接阿里云服务器MySQL报错2003-Can't connect to MySQL server on 'xxx.xxx.xxx.xxx'(10038)

    问题描述: 今天在连接阿里云服务器(Windows Server 2012 R2)上的MySQL时出现,如下图所示的错误: 在网上搜索解决办法时,总结主要包括两个方面: 确定服务器的3306端口对外开 ...

最新文章

  1. intelij maven
  2. gcc build a project
  3. centos6 安装 mantisbt-1.2.8 —— (5)Mantisbt-1.2.8在contos上的安装
  4. mongod副本集的安装配置
  5. Python学习路程day20
  6. java 处理表单_java – 处理multipart / form-data输入
  7. node 调用腾讯大数据接口
  8. SAP Spartacus config-initializer.service.ts get isStable属性失败的调试
  9. as的使用技巧及注意点
  10. 论文学习19-Structured prediction models for RNN based sequence labeling in clinical text(LSTM_CRF,2016)
  11. eclipse 基础设置
  12. C++_类和对象_对象特性_构造函数和析构函数---C++语言工作笔记040
  13. php正则多个字段,正则表达式,grep_linux shell中如何实现对多个关键字段的排除?,正则表达式,grep,linux,shell - phpStudy...
  14. 【深入浅出通信原理-学习笔记】天线技术
  15. Java 编程之美:并发编程基础晋级篇
  16. php 公众号采集器,别跑,教你微信公众号文章采集! - 八爪鱼采集器
  17. MYSQL 中取拼音首字母的函数
  18. 螺丝螺母垫片顺序图片_如何计算螺丝,螺栓和螺母的尺寸
  19. 思路:controller层:后台如何取值 前端如何给name赋值 例如是id赋值还是自己随意定义...
  20. 华为手机8.0.0怎么找到云相册_华为云相册下载-华为云相册预约 安卓版v1.0-PC6安卓网...

热门文章

  1. Vulkan填坑学习Day18—顶点输入描述
  2. Chem. Sci.|AlphaFold加速了人工智能药物的发现:一种新型CDK20小分子抑制剂
  3. 787. K 站中转内最便宜的航班(动态规划)
  4. linux服务器检查硬件配置,linux怎么查看服务器硬件配置
  5. suse-linux查看硬件信息和修改分辨率
  6. Java实现简易TCP客户端、服务器端通信程序
  7. win10toast 唤起Windows通知
  8. 旅游预览报名开发日志
  9. SSD和Ramdisk的配合简直就是天衣无缝,固态硬盘长生不老,全靠它。
  10. win8应用商店安装路径