RocketMQ单机环境搭建

目录

1. 快速搭建RocketMQ服务

1.1 下载运行包

1.2 上传运行包到服务器且解压

1.3 修改脚本

1.4 启动服务 

1.5 关闭服务

1.6 环境变量配置 

2. 快速实现RocketMQ消息收发

3. 搭建RocketMQ可视化管理

3.1 下载Dashboard源码压缩包

3.2 编译 Dashboard源码

​3.3 上传jar包到服务器

3.4 创建配置文件

 3.5 启动管理控制台服务

3.6 查看管理界面


1. 快速搭建RocketMQ服务

注意: RocketMQ服务基于Java开发,所以需要提前安装JDK。JDK建议采用1.8版本即可。

jdk安装可以参考:Linux环境下安装JDK-CSDN博客

1.1 下载运行包

​ RocketMQ的官网地址: http://rocketmq.apache.org 。

在下载页面可以获取RocketMQ的源码包以及运行包。

下载页面地址:https://rocketmq.apache.org/download。

RocketMQ单机环境搭建_第1张图片

​ 当前最新的版本是5.x,这是一个着眼于云原生的新版本,给 RocketMQ 带来了非常多很亮眼的新特性。但是目前来看,企业中用得还比较少。因此,我们这里采用的还是更为稳定的4.9.5版本。运行只需要下载Binary运行版本就可以了

1.2 上传运行包到服务器且解压

RocketMQ单机环境搭建_第2张图片

unzip rocketmq-all-4.9.5-bin-release.zip

 RocketMQ单机环境搭建_第3张图片

解压后的文件说明

RocketMQ单机环境搭建_第4张图片

1.3 修改脚本

注意:如果你的资源足够大,跳过次步骤。生产环境不建议调整,也跳过次步骤。

RocketMQ建议的运行环境需要至少12G的内存,这是生产环境比较理想的资源配置。但是,学习阶段,如果你的服务器没有这么大的内存空间,那么就需要做一下调整。进入bin目录,对其中的runserver.sh和runbroker.sh两个脚本进行一下修改。

修改runserver.sh

vim runserver.sh

修改内容大致在文件的71行;RocketMQ单机环境搭建_第5张图片

修改为:

JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

RocketMQ单机环境搭建_第6张图片

修改runbroker.sh

vim runbroker.sh 

RocketMQ单机环境搭建_第7张图片

JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g"
修改为:
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g"

1.4 启动服务 

 RocketMQ的后端服务分为nameserver和broker两个服务。所以我们需要启动这两个服务。

启动nameserver服务

cd /app/rocketmq/rocketmq-all-4.9.5-bin-release
nohup bin/mqnamesrv &

使用jps查看服务是否启动成功

RocketMQ单机环境搭建_第8张图片

启动brocker

启动broker服务之前,要做一个小小的配置。进入RocketMQ安装目录下的conf目录,修改broker.conf文件,在文件最后面加入一个配置:

autoCreateTopicEnable=true

RocketMQ单机环境搭建_第9张图片

这个选项是为了便于进行后续实验。他的作用是允许 broker 端自动创建新的 Topic。

注意:如果你的服务器配置了多张网卡,比如阿里云,腾讯云这样的云服务器,他们通常有内网网卡和外网网卡两张网卡,那么需要增加配置brokerIP1属性,指向服务器的外网IP 地址,这样才能确保从其他服务器上访问到RocketMQ 服务。

现在,我们可以启动broker服务了

cd /app/rocketmq/rocketmq-all-4.9.5-bin-release 
nohup bin/mqbroker &

使用jps查看服务是否启动成功

 这两个服务都启动成功了,截至现在,我们就搭建了一个rocketMQ的单机环境。

1.5 关闭服务

停止RocketMQ服务可以通过mqshutdown指令进行

mqshutdown namesrv # 关闭nameserver服务

mqshutdown broker # 关闭broker服务

1.6 环境变量配置 

在实际服务部署时,我们将将RocketMQ的部署地址添加到环境变量当中。例如使用vim ~/.bash_profile指令,添加以下内容。

export ROCKETMQ_HOME=/app/rocketmq/rocketmq-all-4.9.5-bin-releasePATH=$ROCKETMQ_HOME/bin:$PATHexport PATH

这样就不必每次进入RocketMQ的安装目录了。直接可以使用mqnamesrv 和mqbroker指令

2. 快速实现RocketMQ消息收发

​ RocketMQ后端服务启动完成后,就可以启动客户端的消息生产者和消息消费者进行消息转发了。接下来,我们会先通过RocketMQ提供的命令行工具快速体验一下RocketMQ消息收发的功能。

第一步:需要配置一个环境变量NAMESRV_ADDR,只想我们之前启动的nameserver服务。

通过vi ~/.bash_profile添加以下配置。然后使用source ~/.bash_profile让配置生效。

RocketMQ单机环境搭建_第10张图片

bash_profile追加的内容

export NAMESRV_ADDR='localhost:9876' 

RocketMQ单机环境搭建_第11张图片

第二步:通过指令启动RocketMQ的消息生产者发送消息。

tools.sh org.apache.rocketmq.example.quickstart.Producer 

这个指令会默认往RocketMQ中发送1000条消息。在命令行窗口可以看到发送消息的日志:RocketMQ单机环境搭建_第12张图片

RocketMQ单机环境搭建_第13张图片

第三步:可以启动消息消费者接收之前发送的消息

tools.sh org.apache.rocketmq.example.quickstart.Consumer

 消费者启动完成后,可以看到消费到的消息,​ 每一条这样的日志信息就表示消费者接收到了一条消息。        RocketMQ单机环境搭建_第14张图片

3. 搭建RocketMQ可视化管理

        RocketMQ的社区就提供了一个图形化的管理控制台Dashboard,可以用可视化的方式直接观测并管理RocketMQ的运行过程。

3.1 下载Dashboard源码压缩包

        Dashboard服务并不在RocketMQ的运行包中,需要到RocketMQ的官网下载页面单独下载。

下载Dashboard的源码压缩包。

RocketMQ单机环境搭建_第15张图片 

3.2 编译 Dashboard源码

将源码下载下来后,需要解压并进入对应的目录,使用maven进行编译。(需要提前安装maven客户端)

mvn clean package -Dmaven.test.skip=true

RocketMQ单机环境搭建_第16张图片

RocketMQ单机环境搭建_第17张图片 3.3 上传jar包到服务器

编译完成后,在源码的target目录下会生成可运行的jar包rocketmq-dashboard-1.0.1-SNAPSHOT.jar。接下来可以将这个jar包上传到服务器上。我们上传到/app/rocketmqDashboard/目录下

RocketMQ单机环境搭建_第18张图片

3.4 创建配置文件

 接下来我们需要在jar包所在的目录下创建一个application.yml配置文件,​ 主要是要指定nameserver的地址。配置文件内容如下: 

rocketmq: 
  config: 
    namesrvAddrs: 
      - 192.168.31.5:9876 

创建文件及追加内容

vim application.yml

RocketMQ单机环境搭建_第19张图片 RocketMQ单机环境搭建_第20张图片

注意:关于这个配置文件中更多的配置选项,可以参考一下dashboard源码当中的application.yml配置文件。 

 3.5 启动管理控制台服务

java -jar rocketmq-dashboard-1.0.0.jar

RocketMQ单机环境搭建_第21张图片 

3.6 查看管理界面

        应用启动完成后,会在服务器上搭建起一个web服务,我们就可以通过访问http://192.168.31.5:8080查看到管理页面。

RocketMQ单机环境搭建_第22张图片

接下来我们通过命令发送一些消息,来看一下效果:

tools.sh org.apache.rocketmq.example.quickstart.Producer

 RocketMQ单机环境搭建_第23张图片

管理界面查看消息 

RocketMQ单机环境搭建_第24张图片

 

你可能感兴趣的:(RocketMQ,rocketmq)