一般测试环境中,mq配置默认开启自动创建topic和group。
但在生产环境中,建议关闭自动创建功能,于是,需要手动创建应用所需的topic和group时就会用到以下命令。
创建topic:
sh mqadmin updateTopic -c DefaultCluster -n localhost:9876 -t testtopic
查看topic列表:
sh mqadmin topicList -n 192.168.10.10:9876
查看指定topic路由信息:
sh mqadmin topicRoute -n 192.168.10.10:9876 -t testtopic1
查看指定topic状态:
sh mqadmin topicStatus -n 192.168.10.10:9876 -t testtopic1
查看指定topic的消息:
sh mqadmin queryMsgByOffset -b broker-b -i 1 -o 0 -t NewUpt_PsgEventTopic -n localhost:9876
创建消费者组:
sh mqadmin updateSubGroup -n localhost:9876 -c DefaultCluster -g push-consumer-group1
查看消费者组:
sh mqadmin consumerProgress -n localhost:9876
查看集群信息:
sh mqadmin clusterList -n 192.168.10.10:9876
查看broker状态
sh mqadmin brokerStatus -b 192.168.10.10:10911 -n 192.168.10.10:9876
创建生产者组:
创建订阅组:
sh mqadmin updateSubGroup -c DefaultCluster -g subgroup1 -n 192.168.10.10:9876
如果是对集群扩容,则可以通过指定新的broker地址在扩容的机器上创建一份新的订阅组信息
根据key查消息:
sh mqadmin queryMsgByKey -k test100 -t testtopic1 -n 192.168.10.10:9876
根据unique key查:(非msgid )
sh mqadmin queryMsgByUniqueKey -i 0B0D308C16C418B4AAC236B77FFB03E3 -n 192.168.10.10:9876 -t testtopic1
tool.sh工具测试收发消息
自动创建开启后,可以利用mq自动的tool.sh工具测试收发消息。(注意是开启了自动创建topic后才行。)
在bin目录下执行:
生产者发送消息:
export NAMESRV_ADDR=127.0.0.1:9876
sh tools.sh org.apache.rocketmq.example.quickstart.Producer
消费者接受消息:
export NAMESRV_ADDR=127.0.0.1:9876
sh tools.sh org.apache.rocketmq.example.quickstart.Consumer
rocketmq需开启的端口号
rocketmq :9876
非vip通道端口:10911
vip通道端口:10909
10909是VIP通道对应的端口,在JAVA中的消费者对象或者是生产者对象中关闭VIP通道即可无需开放10909端口