Bootstrap

RocketMQ安装部署详解

一、RocketMQ简介

RocektMQ是阿里巴巴在2012年开源的一个纯java、分布式消息中间件。RocektMQ具有低延迟、高性能、可靠性、万亿级别的容量和灵活的可伸缩性。2016年阿里巴巴将RocketMQ捐赠给Apache,2017年9月RocketMQ正式从Apache社区正式毕业,成为Apache顶级项目。

二、消息队列优点

消息队列的有应用解耦、流量削峰、消息分发等多种优点。
本文接下来详细介绍RocketMQ安装步骤。

三、单机安装步骤

1、环境要求

1)64bit OS
2)64bit JDK 1.8+;
3)Maven 3.2.x;
4)Git;
5)4g+ free disk for Broker server

2、下载

从https://www.apache.org/dyn/closer.cgi?path=rocketmq/4.7.1下载4.7.1版本二进制包。

3、Linux环境安装

将二进制压缩包解压,进入bin目录。
首先启动Name Server,

nohup sh bin/mqnamesrv &

之后启动Broker:

nohup sh bin/mqbroker -n localhost:9876 &

接下来就可以收发消息了。
Linux环境安装比较简单,下面重点介绍windows环境安装。

4、Windows环境安装

下面的步骤是Windows10上进行的,要求必须安装powershell。
1)将二进制包解压到D:\rocketmq下
2)设置环境变量

ROCKETMQ_HOME=D:\rocketmq
NAMESRV_ADDR=localhost:9876

3)启动Name Server
打开powershell,执行如下命令:

.\bin\mqnamesrv.cmd

当出现下图时即为启动成功:
在这里插入图片描述
4)启动Broker
打开一个新的powershell,执行如下命令:

.\bin\mqbroker.cmd -n localhost:9876 autoCreateTopicEnable=true

出现下图表示启动成功。
在这里插入图片描述
日志文件中也可以看到启动成功的信息,默认情况下rocketMQ将日志打印在个人目录的logs\rocketmqlogs下。
可以修改conf目录下logback_broker.xml和logback_namesrv.xml的配置将日志打印在指定位置。

5、程序访问

生产者代码:

public class Producer {
   
    public static void main(String[] args) throws Exception{
   
        DefaultMQProducer producer = new DefaultMQProducer("producer-A");
        producer.setNamesrvAddr ("localhost:9876");
        producer.start() ;
        for (int i = 0 ; i < 100 ; i++) {
   
        //Create a Message instance, specify ng Top工 c tag and Message
            Message msg =new Message("TopicTest" /* Topic */ ,
                        "TagA" /* Tag*/ ,
                        ("Hello RocketMQ " + i)
;