Rocketmq介绍和安装

2.安装

2.1.源码安装

2.1.1.安装maven
上传解压
Mkdir /home/maven
Cd /home/maven
Rz D:\javasoftware\maven\apache-maven-3.5.2-bin.tar.gz
Tar -zxf apache-maven-3.5.2-bin.tar.gz

配置环境变量
Vim /etc/profile,添加
export PATH=/home/maven/apache-maven-3.5.2/bin:$PATH

:wq,保存
Source /etc/profile,重启

测试
Mvn -v

2.1.2.安装rocketmq
下载源码包rocketmq-all-4.2.0-source-release.zip
上传到服务器

Unzip rocketmq-all-4.2.0-source-release.zip

cd rocketmq-all-4.2.0/

mvn -Prelease-all -DskipTests clean install -U, 安装
这一步要下载很多jar包,安装十几个模块,装了半个小时,太费时间了。

Distribution模块多了target目录,
[root@localhost rocketmq-all-4.2.0]# cd distribution/
[root@localhost distribution]# ll
total 56
drwxr-xr-x. 2 root root 4096 Dec 13 22:12 benchmark
drwxr-xr-x. 2 root root 4096 Dec 13 22:12 bin
drwxr-xr-x. 5 root root 4096 Dec 13 22:12 conf
-rw-r–r--. 1 root root 17336 Dec 13 22:12 LICENSE-BIN
-rw-r–r--. 1 root root 1337 Dec 13 22:12 NOTICE-BIN
-rw-r–r--. 1 root root 4885 Dec 13 22:12 pom.xml
-rw-r–r--. 1 root root 2133 Dec 13 22:12 release-client.xml
-rw-r–r--. 1 root root 2990 Dec 13 22:12 release.xml
drwxr-xr-x. 6 root root 4096 Apr 25 17:38 target
[root@localhost distribution]# cd target/
[root@localhost target]# ll
total 17768
drwxr-xr-x. 6 root root 4096 Apr 25 17:38 apache-rocketmq
-rw-r–r--. 1 root root 9058025 Apr 25 17:38 apache-rocketmq.tar.gz
-rw-r–r--. 1 root root 9098504 Apr 25 17:38 apache-rocketmq.zip
drwxr-xr-x. 2 root root 4096 Apr 25 17:36 archive-tmp
-rw-r–r--. 1 root root 87 Apr 25 17:38 checkstyle-cachefile
-rw-r–r--. 1 root root 6066 Apr 25 17:38 checkstyle-checker.xml
-rw-r–r--. 1 root root 83 Apr 25 17:38 checkstyle-result.xml
drwxr-xr-x. 2 root root 4096 Apr 25 17:36 effective-pom
drwxr-xr-x. 3 root root 4096 Apr 25 17:36 maven-shared-archive-resources
[root@localhost target]# cd apache-rocketmq
[root@localhost apache-rocketmq]# ll
total 44
drwxr-xr-x. 2 root root 4096 Apr 25 17:38 benchmark
drwxr-xr-x. 2 root root 4096 Apr 25 17:38 bin
drwxr-xr-x. 5 root root 4096 Dec 13 22:12 conf
drwxr-xr-x. 2 root root 4096 Apr 25 17:38 lib
-rw-r–r--. 1 root root 17336 Dec 13 22:12 LICENSE
-rw-r–r--. 1 root root 1337 Dec 13 22:12 NOTICE
-rw-r–r--. 1 root root 2426 Dec 13 22:12 README.md
cd distribution/target/apache-rocketmq/bin

2.2.二进制解压包安装

Rz rocketmq-all-4.2.0-bin-release.zip
unzip rocketmq-all-4.2.0-bin-release.zip -d rocketmq-all-4.2.0-bin-release
Unzip默认把里面内容解压到当前文件夹,-d,解压到指定文件夹。
cd rocketmq-all-4.2.0-bin-release/bin

2.3.启动

2.3.1.启动name server

默认内存太大了
cat mqnamesrv

内部调用runserver.sh

cat runserver.sh

修改成

nohup sh mqnamesrv &,不好,按下enter才会输入下一个命令。
nohup sh mqnamesrv > /dev/null 2>&1 &,这个好,可以直接输入其他命令。
在当前目录,多出来nohup.out文件,
在~/logs/rocketmqlogs/多出来namesrv.log文件,

tail -f ~/logs/rocketmqlogs/namesrv.log
The Name Server boot success…

Jps,发现进程NamesrvStartup
[root@localhost bin]# jps
2285 NamesrvStartup
2302 Jps

2.3.2.启动broker

nohup sh mqbroker -n localhost:9876 &

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000005c0000000, 8589934592, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 8589934592 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /home/rocketmq/rocketmq-all-4.2.0/distribution/target/apache-rocketmq/bin/hs_err_pid4813.log

内存需要8G,没搞错吧。

分析原因:
Cat mqbroker

内部调用runbroker.sh

Cat runbroker.sh

初始内存8G,

修改成
-Xms256m -Xmx256m -Xmn128m"

再次启动就成功了,
[root@localhost bin]# nohup sh mqbroker -n localhost:9876 &
[2] 2313
nohup: ignoring input and appending output to `nohup.out’

Jps,发现进程BrokerStartup
[root@localhost bin]# jps
2320 BrokerStartup
2377 Jps
2285 NamesrvStartup

tail -f ~/logs/rocketmqlogs/broker.log
The broker[%s, 172.30.30.233:10911] boot success…

2.3.3.收发消息

在首发消息之前,需要设置name server的值,
export命令用于将shell变量输出为环境变量,或者将shell函数输出为环境变量。

export NAMESRV_ADDR=localhost:9876

./tools.sh org.apache.rocketmq.example.quickstart.Producer
SendResult [sendStatus=SEND_OK, msgId=AC112A010963330BEDB48860DA700000, offsetMsgId=AC112A0100002A9F00000000000230F0, messageQueue=MessageQueue [topic=TopicTest, brokerName=localhost, queueId=0], queueOffset=199]
死循环发送消息,ctrl+c终止。

./tools.sh org.apache.rocketmq.example.quickstart.Consumer
ConsumeMessageThread_16 Receive New Messages: [MessageExt [queueId=2, storeSize=180, queueOffset=185, sysFlag=0, bornTimestamp=1524724087840, bornHost=/192.168.5.128:35493, storeTimestamp=1524724087849, storeHost=/172.17.42.1:10911, msgId=AC112A0100002A9F0000000000020828, commitLogOffset=133160, bodyCRC=1996742104, reconsumeTimes=0, preparedTransactionOffset=0, toString()=Message [topic=TopicTest, flag=0, properties={MIN_OFFSET=0, MAX_OFFSET=200, CONSUME_START_TIME=1524800117986, UNIQ_KEY=AC112A010E09330BEDB483D9C8200065, WAIT=true, TAGS=TagA}, body=18]]]
死循环发送消息,ctrl+c终止。

2.3.4.关闭

先关闭broker,后关闭namesrv。
[root@localhost bin]# sh mqshutdown broker
The mqbroker(2364) is running…
Send shutdown request to mqbroker(2364) OK

[root@localhost bin]# sh mqshutdown namesrv
The mqnamesrv(2247) is running…
Send shutdown request to mqnamesrv(2247) OK
[2]+ Exit 143 nohup sh mqbroker -n localhost:9876
[root@localhost bin]#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值