阿里云centos7下rocketmq的安装教程(sendDefaultImpl call timeout异常处理)

1.下载地址:
http://rocketmq.apache.org/dowloading/releases/

wget https://mirrors.tuna.tsinghua.edu.cn/apache/rocketmq/4.2.0/rocketmq-all-4.4.0-bin-release.zip

解压:
unzip rocketmq-all-4.4.0-bin-release.zip

如果unzip找不到则先下载:
yum install -y unzip zip

在/usr/local/下新建目录rocketmq
mkdir rocketmq

然后将解压目录剪切到rocket目录下:
mv  xx  xx

nohup指令安装:
查看本地是否已经有了:
which nohup

如果没有下载:
yum install coreutils

配置:
vi ~/.bash_profile
在环境变量PATH后面加上:usr/bin

source ~/.bash_profile

nohup --version

RocketMQ默认的虚拟机内存较大,启动Broker如果因为内存不足失败,需要编辑如下两个配置文件,修改JVM内存大小,
不然broker会启动失败:
# 编辑runbroker.sh和runserver.sh修改默认JVM大小
vi runbroker.sh
vi runserver.sh

JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m  -XX:MaxMetaspaceSize=320m"


启动NameServer:
# 1.启动NameServer
nohup sh bin/mqnamesrv &
# 2.查看启动日志
tail -f ~/logs/rocketmqlogs/namesrv.log

启动Broker:
# 1.启动Broker
nohup sh bin/mqbroker -n localhost:9876 &
# 2.查看启动日志
tail -f ~/logs/rocketmqlogs/broker.log 


测试:注意如果在bin目录,下面命令就不需要添加bin/
jps查看nameserver,broker进程是否启动

发送方:
# 1.设置环境变量
export NAMESRV_ADDR=localhost:9876
# 2.使用安装包的Demo发送消息
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

接收方:
# 1.设置环境变量
export NAMESRV_ADDR=localhost:9876
# 2.接收消息
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

关闭rocketmq:
# 1.关闭NameServer
sh bin/mqshutdown namesrv
# 2.关闭Broker
sh bin/mqshutdown broker



图形化界面:
RocketMQ有一个对其扩展的开源项目incubator-rocketmq-externals,这个项目中有一个子模块叫rocketmq-console,
这个便是管理控制台项目了,先将incubator-rocketmq-externals拉到本地,因为我们需要自己对rocketmq-console进行编译打包运行。

git clone https://github.com/apache/rocketmq-externals
这是个boot项目。修改里面properties配置文件rocketmq.config.namesrvAddr
cd rocketmq-console
mvn clean package -Dmaven.test.skip=true




查看某个端口被谁占用:
netstat -lnp|grep 8888

后台启动项目:
nohup java -jar xxx &

常见异常:
阿里云部署rocketmq本地代码访问:
老是出现:
org.apache.rocketmq.remoting.exception.RemotingTooMuchRequestException: sendDefaultImpl call timeout

确保阿里云端口开启:
配置安全组:
9876,10911,10909

vim conf/broker.conf
添加:
namesrvAddr=你得公网ip:9876
brokerIP1=你的公网ip

确保防火墙已经开启端口或者直接关闭防火墙:
netstat -lnp 查看端口占用情况
netstat -lnpt |grep 5672 查看5672被哪个端口占用
firewall-cmd --zone=public --list-ports 查看防火墙所有开放的端口
firewall-cmd --zone=public --add-port=5672/tcp --permanent # 开放5672端口
firewall-cmd --zone=public --remove-port=5672/tcp --permanent #关闭5672端口
firewall-cmd --reload # 配置立即生效

然后启动namesrv:
nohup ./bin/mqnamesrv -n 你的公网IP:9876 &

broker启动:
nohup sh bin/mqbroker -n 你的公网IP:9876 -c conf/broker.conf autoCreateTopicEnable=true &

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值