Linux服务器上RockeMQ的简单部署

1.什么是RocketMq

RcoketMQ 是一款低延迟、高可靠、可伸缩、易于使用的消息中间件。rocketMQ是阿里开源的一款十分优秀的消息队列,rocketMQ具有很多其他消息队列不具有的特性,rocketMQ已经加入了apache,成为apache的顶级项目。

2.部署流程

2.1下载地址:http://rocketmq.apache.org/dowloading/releases/ ,Binary版,这个版本是编译好的jar和辅助的shell脚本

2.2将下载好的压缩文件解压到如下路径下usr/local/apollo/RocketMq/rocketmq-all-4.2.0-binls

说明:

LICENSE 、 NOTICE 和 README.md 包括一些版权声 明和功能说明信息;
benchmark 里包括运行 benchmark 程序的 shell 脚本; bin 文件夹里含有各种使
用 RocketMQ 的 shell 脚本( Linux 平台)和 cmd 脚本( Windows 平台),比如
常用的启动 NameServer 的脚本 mqnamesrv ,启动 Broker 的脚本 mqbroker , 集
群管理脚本 mqadmin 等 ; conf 文件夹里有一些示例配置文件,包括三种方式的
broker 配置文件、 logback 日 志配置文件等,用户在写配置文件的时候,一般基
于这些示例配置文件,加上 自 己特殊的需求即可; lib 文件夹里包括 RocketMQ
各个模块编译成的 jar 包,以及 RocketMQ 依赖的 一 些 jar 包,比如 Netty 、
commons - lang 、 FastJSON 等

2.3启动消息队列服务

(1)启动NameServer:在当前路径下执行linux命令

nohup sh bin/mqnamesrv &

使用 ps -aux 发现如下进程即启动成功

(2)启动Broker

nohup sh/bin/mqbroker -n localhost:9876&

使用 ps -aux 发现如下进程即启动成功

3.部署时遇到的一些问题

3.1所有的nuhup输出均会生成一个nohup.out文件。可在文件中查看运行是否成功或者出现了什么差错

3.2提示jdk版本要1.8表示当前环境缺少java环境,百度搜索教程配置好jdk环境即可

3.3错误日志中有如下提示

# There is insufficient memory for the Java Runtime Environment to continue.
# Cannot create GC thread. Out of system resources.
# Possible reasons:
#   The system is out of physical RAM or swap space
#   In 32 bit mode, the process size limit was hit
# Possible solutions:
#   Reduce memory load on the system
#   Increase physical memory or swap space
#   Check if swap backing store is full
#   Use 64 bit Java on a 64 bit OS
#   Decrease Java heap size (-Xmx/-Xms)
#   Decrease number of Java threads
#   Decrease Java thread stack sizes (-Xss)
#   Set larger code cache with -XX:ReservedCodeCacheSize=
# This output file may be truncated or incomplete.
#
#  Out of Memory Error (gcTaskThread.cpp:46), pid=17285, tid=47629249568816
#
# JRE version: 6.0_43-b01
# Java VM: Java HotSpot(TM) 64-Bit Server VM (20.14-b01 mixed mode linux-amd64 compressed oops)
这种情况说明nameserver或者Broker的启动内存不够了,需要根据你自身环境的内存大小进行jvm参数配置。如我当前测试的服务器内存大小为5G,于是我两个均分配了2G内存。

具体操作步骤:修稿runbroker.sh和runserver.sh

broker.sh:JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn2g"

runserver.sh:JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

如果自身内存大小和实际的配置不匹配就会报内存溢出问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值