重大发现!消息中间件——RocketMQ(一) 环境搭建(完整版)上

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 重大发现!消息中间件——RocketMQ(一) 环境搭建(完整版)上

每章一点正能量:自我控制是最强者的本能。——萧伯纳

前言

最近在学习消息中间件——RocketMQ,打算把这个学习过程记录下来。此章主要介绍环境搭建。此次主要是单机搭建(条件有限),包括在Windows、Linux环境下的搭建,以及console监控平台搭建,最后加一demo验证一下。

环境准备

在搭建RocketMQ之前,请先确保如下环境已经搭建完毕

Java环境(我的JDK1.8)

Maven环境(我的3.6.1目前最新版)

Git环境

没有搭建的同学走传送门:

JDK环境搭建: JAVA8环境搭建

Maven环境搭建: Windows环境下使用Nexus 3.X 搭建Maven私服及使用介绍

Git环境搭建:Git环境搭建及配置

1. Windows环境下搭建

1.1 下载

官方网站:http://rocketmq.apache.org/

6051edbf9573ffda5b4cbb56b2a5c0a.png

目前最新版的是V4.5.0,点击进去。

3ad8bc83f2a39004f375bf10073e97e.png

选择下载 rocketmq-all-4.5.0-bin-release.zip。弹出另外一个页面,这里选择rocketmq-all-4.5.0-bin-release.zip进行下载。

5e89cc079a668efc2a77f5c41891b22.png

下载成功后,选择一个目录放好并解压。

d7b872a12a8228b82da6a8de5e61919.png

1.2 修改JVM配置

以上操作完毕之后,进入目录bin目录,我这里是

H:\rocketmq\rocketmq-all-4.5.0-bin-release\rocketmq-all-4.5.0-bin-release\bin。

找到runserver.cmd和runbroker.cmd中的JAVA_OPT。

e6256df59376c5a29cab9bea5f7afe9.png

原JAVA_OPT:

set "JAVA_OPT=%JAVA_OPT% -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

将 Xms Xmx 这两个值改小一些,改为1g,如:

set "JAVA_OPT=%JAVA_OPT% -server -Xms1g -Xmx1g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
自己根据虚拟机内存大小设置,超出内存大小可能会报错。

1.3 配置环境变量

上述步骤执行完毕后,我们需要将RocketMQ安装目录的bin目录配置到环境变量中。

2dfd1d473d1a15f2d753e7d572e3538.png

1.4 启动

以上配置都完成,接下来就是启动过程。中间有点坑,请务必按步骤安装。

在RocketMQ安装目录的bin目录下,执行命令cmd:

我的目录:

H:\rocketmq\rocketmq-all-4.5.0-bin-release\rocketmq-all-4.5.0-bin-release\bin

可以通过shift+鼠标右击 触发cmd窗口选项。也可以通过win+R 在窗口输入cmd,进入cmd窗口后移动到bin目录下。

1.4.1 启动NAMESERVER

执行命令:start mqnamesrv.cmd

成功后会弹出提示框,此框勿关闭。

5a804c6c007c6ac8e842bd26d9ca7dc.png

1.4.3 启动BROKER

执行命令:‘start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true’

注意:假如弹出提示框提示‘错误: 找不到或无法加载主类 xxxxxx’。打开runbroker.cmd,然后将‘%CLASSPATH%’加上英文双引号。

2722d82a65ca104811484872a212a21.png

打开 runbroker.cmd 进行修改

原:

set "JAVA_OPT=%JAVA_OPT% -cp %CLASSPATH%"

修改后:

set "JAVA_OPT=%JAVA_OPT% -cp "%CLASSPATH%""

2533def0e359bbd62455d965f81cdf8.png

再次执行命令:

启动成功!

0b2041b4721020dd9caf1daa20ee6a1.png

这时候一共有三个窗口。

2. 安装Console监控

2.1 下载

下载地址:https://github.com/apache/roc...

下载完后如图所示:选择——>rocketmq-console

ec7fc5f7781a10170db9b3f966e49a3.png

2.2 配置

下载完成之后,进入‘rocketmq-externalsrocketmq-consolesrcmainresources’文件夹,打开‘application.properties’进行配置。

6d2504ee6f8fadf1805b92e7727ebab.png

3fc0b2b87b879043e032fbe23e7bbec.png

2.2 编译启动

进入‘rocketmq-externalsrocketmq-console’文件夹,执行‘mvn clean package -Dmaven.test.skip=true’,编译生成。中间有个比较慢的下载过程需要等待。

ca68b601ac9fc0375891c3ca693b653.png

编译成功之后,cmd进入‘target’文件夹,执行‘java -jar rocketmq-console-ng-1.0.1.jar’,启动‘rocketmq-console-ng-1.0.1.jar’。

2c1cd4c0a0dd9cf52d8eab15038aca7.png

1abac72240d1adf21ad8163f9e11bf5.png

2.3 查看

访问地址:localhost:8082

5c897c81f4d5e44557aa5921101b600.png

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
4月前
|
消息中间件 存储 负载均衡
消息中间件的选择:RabbitMQ是一个明智的选择
消息中间件的选择:RabbitMQ是一个明智的选择
50 0
|
2月前
|
消息中间件 中间件 Kafka
原来RocketMQ中间件可以这么玩
消息队列作为高并发系统的核心组件之一,能够帮助业务系统解构提升开发效率和系统稳定性。主要具有以下优势:
30 0
|
5月前
|
消息中间件 数据库
消息中间件系列教程(18) -RabbitMQ-基于RabbitMQ解决分布式事务(思想)
消息中间件系列教程(18) -RabbitMQ-基于RabbitMQ解决分布式事务(思想)
50 0
|
5月前
|
消息中间件
消息中间件系列教程(17) -RabbitMQ-死信队列
消息中间件系列教程(17) -RabbitMQ-死信队列
126 0
|
5月前
|
消息中间件
消息中间件系列教程(16) -RabbitMQ-应答模式
消息中间件系列教程(16) -RabbitMQ-应答模式
36 0
|
5月前
|
消息中间件
消息中间件系列教程(15) -RabbitMQ-基于全局消息ID解决幂等性问题
消息中间件系列教程(15) -RabbitMQ-基于全局消息ID解决幂等性问题
46 0
|
5月前
|
消息中间件 缓存 API
消息中间件系列教程(14) -RabbitMQ-自动补偿机制
消息中间件系列教程(14) -RabbitMQ-自动补偿机制
95 0
|
5月前
|
消息中间件 Java Maven
消息中间件系列教程(12) -RabbitMQ-消息确认机制
消息中间件系列教程(12) -RabbitMQ-消息确认机制
44 0
|
5月前
|
消息中间件 Java Maven
消息中间件系列教程(11) -RabbitMQ -案例代码(通配符模式)
消息中间件系列教程(11) -RabbitMQ -案例代码(通配符模式)
38 0
|
5月前
|
消息中间件 Java Maven
消息中间件系列教程(10) -RabbitMQ -案例代码(路由模式)
消息中间件系列教程(10) -RabbitMQ -案例代码(路由模式)
41 0

相关产品

  • 云消息队列 MQ