windows上安装rocketmq

一、安装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: ocketmq-externals-release-rocketmq-console-1.0.0srcmain esources

  

3: 将console打成jar包(编译)  

    cd  d: ocketmq-externals-release-rocketmq-console-1.0.0

    mvn clean package Dmaven.test.skip=true 

4:启动服务

    cd  d: ocketmq-externals-release-rocketmq-console-1.0.0 ocketmq-console arget

    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();
            }
        }
    }
}

  

原文地址:https://www.cnblogs.com/amuge/p/10275292.html