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

Liana ·
更新时间:2024-09-20
· 680 次阅读

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 &


作者:lucky_dogwang



timeout rocketmq CALL 安装 阿里 centos 教程

需要 登录 后方可回复, 如果你还没有账号请 注册新账号