Rocketmq: No route info of this topic, TopicTest

Created on 18 Sep 2018  ·  14Comments  ·  Source: apache/rocketmq

我的broker配置文件里面配置了autoCreateTopicEnable=true,但是我启动生产者发送消息的时候还会报错org.apache.rocketmq.client.exception.MQClientException: No route info of this topic, TopicTest
rocketmq版本是4.3.1 release

Most helpful comment

对于那个要求用英文提问的我也是服了,你是中国人吗?

All 14 comments

You can create topic through the tool named mqadmin first. eg: "sh bin/mqadmin sendMessage -t test -k 123 -p "hello" -n localhost:9876"

You need to ask questions in English next time ,Issue submitted in Chinese will be closed.

you have to specific a key value, such as "DefaultCluster", as the first paramter of method producter.createTopic()

对于那个要求用英文提问的我也是服了,你是中国人吗?

对于那个要求用英文提问的我也是服了,你是中国人吗?

是的,你呢

以windows为例:
第一步启动namesrv
语句为:mqnamesrv.cmd -n localhost:9876
image

第二步启动broker
语句为:mqbroker.cmd -n localhost:9876 autoCreateTopicEnable=true &
image

第三步创建TopicTest这个Topic
语句为:mqadmin.cmd updateTopic -b 10.127.127.1:10911(这边放第二步中获得的,-b是单机,-c是集群) -n localhost:9876 -t TopicTest
image

注意,我已经将E:\rocketmq-all-4.5.1-bin-release\bin放入环境变量了,并且系统防火墙已经关闭了。之所以这边我创建Topic的名字是TopicTest,是因为官方样例中用的Topic叫TopicTest。

对于那个要求用英文提问的我也是服了,你是中国人吗?

是的,你呢

You need to ask questions in English next time ,Issue submitted in Chinese will be closed.

为什么要用英文提问?对于你这种要求,呵呵

对于那个要求用英文提问的我也是服了,你是中国人吗?

是的,你呢

You need to ask questions in English next time ,Issue submitted in Chinese will be closed.

为什么要用英文提问?对于你这种要求,呵呵

其实核心在于,Issue是面向个人的还是面向大众的。
如果是面向个人的,大家都是用中国人,于情应该用本国语言,于理母语更能准确表达彼此的意思,降低交流成本。
如果是面向大众,作为阿里,甚至现在是阿帕奇的开源MQ,自然是希望更多的国内外程序员都能使用和了解,会有大量的外国人来查看Issue,通过Issue来了解项目,了解进展,同时解决自己的疑问。如果Issue充斥着中文,就像中国汉语使用者看到readme全是阿拉伯文一样,不利于推广。
综上所述,每个人会有自己的判断,是面向个人还是面向公众,不要以己度人。
我的判断的话,还是面向公众吧。

因为RocketMQ是一个国际项目,且位列Apache基金会名下,不论是从国际化角度还是从受众角度,都不应该仅提供母语讨论,有民族自豪感可以双语讨论

请想象一下非简体使用者遭遇了类似问题点进来的失望与不便。

因为RocketMQ是一个国际项目,且位列Apache基金会名下,不论是从国际化角度还是从受众角度,都不应该仅提供母语讨论,有民族自豪感可以双语讨论

请想象一下非简体使用者遭遇了类似问题点进来的失望与不便。

我没有说“仅能用中文讨论”,但是你也不能限制别人使用中文的权利。
“You need to ask questions in English next time ,Issue submitted in Chinese will be closed.”,我的点在于为什么用中文提问就要被关掉,用英文就不被关掉吗?什么逻辑?github本来就是一个国际化的平台,RocketMQ是一个国际化的项目,就应该允许不同国家,不同种族,不同民族的人来参与,至于使用什么语言,都应该被允许,而不是说使用中文提问就应该被关掉。

因为RocketMQ是一个国际项目,且位列Apache基金会名下,不论是从国际化角度还是从受众角度,都不应该仅提供母语讨论,有民族自豪感可以双语讨论

请想象一下非简体使用者遭遇了类似问题点进来的失望与不便。

双语讨论表示赞同,但是说用中文提问关闭就不对了

对于那个要求用英文提问的我也是服了,你是中国人吗?

是的,你呢

搞毛还要求用英文提问

You need to ask questions in English next time ,Issue submitted in Chinese will be closed.

为什么要用英文提问?对于你这种要求,呵呵

其实核心在于,Issue是面向个人的还是面向大众的。
如果是面向个人的,大家都是用中国人,于情应该用本国语言,于理母语更能准确表达彼此的意思,降低交流成本。
如果是面向大众,作为阿里,甚至现在是阿帕奇的开源MQ,自然是希望更多的国内外程序员都能使用和了解,会有大量的外国人来查看Issue,通过Issue来了解项目,了解进展,同时解决自己的疑问。如果Issue充斥着中文,就像中国汉语使用者看到readme全是阿拉伯文一样,不利于推广。
综上所述,每个人会有自己的判断,是面向个人还是面向公众,不要以己度人。
我的判断的话,还是面向公众吧。
英文更加利于推广,这点我赞同。但是我不认同的是,别人使用汉语进行提问就要被关掉,更何况你是一个中国人,你看得懂汉语。

因为RocketMQ是一个国际项目,且位列Apache基金会名下,不论是从国际化角度还是从受众角度,都不应该仅提供母语讨论,有民族自豪感可以双语讨论
请想象一下非简体使用者遭遇了类似问题点进来的失望与不便。

双语讨论表示赞同,但是说用中文提问关闭就不对了

赞同,一个issue是否被关掉应该取决于问题是否被解决,而不是因为使用中文进行提问。

解决问题呀?这么问题怎么解决呀?
So partners, how is this problem solved? for fanyi.baidu.com

Was this page helpful?
0 / 5 - 0 ratings