Linux上安装rocketmq
1.将安装包上传到linux系统中
这里我在usr/local目录下新建了一个目录叫soft用来存放各种安装包
Rocketmq也上传到soft目录中.
2. 解压安装包
[root@superj soft]# unzip rocketmq-all-4.4.0-bin-release.zip
目录结构:
3.将rmq安装到指定文件夹
这里我在usr/local目录中新建一个文件夹 rocketmq
在local目录下,执行指令: mkdir rocketmq
回到刚刚rocketmq安装包所在目录(soft),将安装包剪切到rocketmq目录中
4.启动rocketmq
1)启动nameserver
1⃣️启动NameServer
nohup sh bin/mqnamesrv &
2⃣️查看启动日志
tail -f ~/logs/rocketmqlogs/namesrv.log
输入命令后,没反应?
配置下jdk环境变量和rocketmq环境变量
①通过 vim ~/.bash_profile 命令打开 .bash_profile,如果没有该文件可以通过 touch ~/.bash_profile 命令创建.添加如下配置,其中 jdk 的位置填入第一步中你自己查找出的 jdk 的位置
export JAVA_HOME=/usr/local/ jdk1.8.0_171
使用 source ~/.bash_profile 命令使配置生效
②修改 RocketMQ 的 bin 目录下的 runserver.sh 和 runbroker.sh,将设置 JAVA_HOME 的第二三行注释掉,把第一行 JAVA_HOME 设置为jdk 的安装目录,如下所示
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME= /usr/local/jdk1.8.0_171
# [ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/java
# [ ! -e "$JAVA_HOME/bin/java" ] && error_exit "Please set the JAVA_HOME variable in your environment, We need java(x64)!"
RocketMQ默认的虚拟机内存较大,也可能造成启动失败,将虚拟内存调小一些
配置mq的环境变量并使其生效
echo "ROCKETMQ_HOME=`pwd`" >> ~/.bash_profile
source ~/.bash_profile
再启动就成功了,日志如下
通过jps命令可以查看当前有哪些进程
💡Tips:
除了通过命令行查看日志,还可以通过notepad++ 安装插件也能连接linux服务器哦,连接上之后就能直接在里面查看日志了
配置连接
连接到远程
2) 启动Broker
1⃣️启动Broker
nohup sh bin/mqbroker -n localhost:9876 &
2⃣️查看启动日志
tail -f ~/logs/rocketmqlogs/broker.log
查看进程,都有,说明启动成功
5.关闭rocketmq
1⃣️关闭NameServer
sh bin/mqshutdown namesrv
2⃣️关闭Broker
sh bin/mqshutdown broker
6.测试rocketmq
1)首先克隆一个进程,一个窗口用来发消息,一个窗口用来接收消息
这里用的ftp工具,右键克隆一个新窗口
将两个窗口都进入到rocketmq的bin目录内
2)发送消息
1⃣️设置临时环境变量
export NAMESRV_ADDR=localhost:9876
2⃣️使用安装包的Demo发送消息(如果在bin目录下了,就去掉指令中的bin/)
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
3)接收消息
1⃣️设置环境变量
export NAMESRV_ADDR=localhost:9876
2⃣️接收消息
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer
疑问???
为啥总有一个窗口报错 说没配置jdk环境变量呢?
克隆的那一个发消息成功了,只能也用这同一个窗口尝试接消息,也成功了