一、安裝rocketmq
1:下載(當前版本:4.3.2 http://rocketmq.apache.org/docs/quick-start )
https://www.apache.org/dyn/closer.cgi?path=rocketmq/4.3.2/rocketmq-all-4.3.2-source-release.zip
2:安裝
解壓:rocketmq-all-4.3.2-source-release.zip
編譯打包:mvn -Prelease-all -DskipTests clean install -U
3:啟動name server
cd distribution/bin
mqnamesrv 或者:start mqnamesrv ###### The Name Server boot success. serializeType=JSON
4:啟動broker
mqbroker -n localhost:9876 或者: start mqbroker -n localhost:9876 ###### The broker[71RTXIH2JCZ2DK8, 192.168.0.130:10911] boot success. serializeType=JSON and name server is localhost:9876
二、安裝rocketmq插件 ( https://github.com/apache/rocketmq-externals )
請留意:目前最新版本,還不可以用,因為console插件引入:rocketmq-4.4.0-SNAPSHOT (但是在官網還沒找到這個版本的)
1:下載:
https://github.com/apache/rocketmq-externals/tree/release-rocketmq-console-1.0.0
2:修改配置(namesrv,啟動服務端口號)
cd d:\rocketmq-externals-release-rocketmq-console-1.0.0\src\main\resources
3: 將console打成jar包(編譯)
cd d:\rocketmq-externals-release-rocketmq-console-1.0.0
mvn clean package Dmaven.test.skip=true
4:啟動服務
cd d:\rocketmq-externals-release-rocketmq-console-1.0.0\rocketmq-console\target
java -jar rocketmq-console-ng-1.0.0.jar
5:測試 localhost:8088
三、生產者
1、springboot下添加依賴:
2、編寫生產者(producer)
package com.xiaohui.localmq.controller; import org.apache.rocketmq.client.MQAdmin; import org.apache.rocketmq.client.exception.MQClientException; import org.apache.rocketmq.client.producer.DefaultMQProducer; import org.apache.rocketmq.client.producer.SendResult; import org.apache.rocketmq.common.message.Message; public class IndexController { public static void main(String[] args) throws MQClientException { final DefaultMQProducer producer = new DefaultMQProducer("ProducerGroupName"); producer.setNamesrvAddr("localhost:9876"); producer.setInstanceName("Producer"); producer.setProducerGroup("ABC"); producer.start(); System.out.println(producer.getNamesrvAddr()); for (int i = 0; i < 10; i++) { producer.createTopic("topictest001", "TopTest2", 10); try { Message message = new Message("TopTest2", "TagA", "OrderD001", "Hello Local Mq message".getBytes()); SendResult sendResult = producer.send(message); System.out.println(sendResult.getMsgId()); } catch (Exception ex) { ex.printStackTrace(); } } } }