mq消息队列服务器部署,RocketMQ消息队列部署与可视化界面安装

MQ安装部署

修改配置

conf/broker.conf

添加brokerIP1

brokerIP1=192.168.0.1

brokerIP1:配置broker所在服务器的ip地址,以便Name Server连接

修改 runserver.sh 和 runbroker.sh

runserver.sh

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

runbroker.sh

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

运行Name Server

nohup sh bin/mqnamesrv &

查看运行日志:tail -f ~/logs/rocketmqlogs/namesrv.log

运行Broker

nohup sh bin/mqbroker -n localhost:9876 -c conf/broker.conf &

通过-c参数指定配置文件

查看运行日志:tail -f ~/logs/rocketmqlogs/broker.log

停止服务的方式

sh bin/mqshutdown broker

sh bin/mqshutdown namesrv

安装可视化管理界面

下载

https://github.com/apache/rocketmq-externals

编译

cd rocketmq-console

mvn clean package -Dmaven.test.skip=true

运行

cd target

nohup java -jar -Drocketmq.config.namesrvAddr=localhost:9876 -Drocketmq.config.isVIPChannel=false rocketmq-console-ng-1.0.1.jar &

访问

http://localhost:8080/

常见异常处理

MQClientException: No route info of this topic, TopicTest1

异常说明

在客户端的Producer运行起来准备发送消息时抛异常为 “ No route info of this topic ” 异常产生的原因可能是:

Broker 禁止自动创建 Topic,且用户没有通过手工方式创建 Topic

Broker 没有正确连接到 Name Server

Producer 没有正确连接到 Name Server

解决办法

排查1:Broker禁止自动创建Topic,且用户没有通过手工方式创建 Topic

可以在rocketmq所在目录下执行 " sh bin/mqbroker -m " 来查看 broker 的配置参数

排查2:Broker 没有正确连接到 Name Server

通过查看broker的日志 tail -f ~/logs/rocketmqlogs/broker.log 看看有没有错误信息

排查3:Producer 没有正确连接到 Name Server

检查程序连接Name Server的地址有没有错

如果在云服务器上,检查安全组的配置9876端口有没有开发

看看有没有打开防火墙,有的话设置防火墙开放9876端口

RemotingTooMuchRequestException: sendDefaultImpl call timeout

异常说明

在客户端的 Producer 运行起来准备发送消息时抛异常如下

通常因为Name Server连接不上Broker

解决办法

排查1:Broker禁止自动创建Topic,且用户没有通过手工方式创建 Topic

可以在rocketmq所在目录下执行 " sh bin/mqbroker -m " 来查看 broker 的配置参数

autoCreateTopicEnable=true 证明是没有问题的

排查2:Broker 没有正确连接到 Name Server

通过查看broker的日志 tail -f ~/logs/rocketmqlogs/broker.log 看看有没有错误信息

排查3:Producer 没有正确连接到 Name Server

检查程序连接Name Server的地址有没有错

如果在云服务器上,检查安全组的配置9876端口有没有开发

看看有没有打开防火墙,有的话设置防火墙开放9876端口

RemotingTooMuchRequestException: sendDefaultImpl call timeout

异常说明

在客户端的 Producer 运行起来准备发送消息时抛异常如下

通常因为Name Server连接不上Broker

解决办法

检查 rocketmq-console 的集群页签,broker 的地址是否正确

ffd076b8956aa6cb0187b91d959c61d9.png

broker地址的配置方式请参考 安装部署 中提到的步骤:

修改broker.conf的配置,添加 brokerIP1 参数

启动broker时加上 -c 参数指定配置文件

消费/查看不了死信队列topic的消息

异常说明

死信队列默认的perm值为2没有查看权限

解决办法

在控制台把队列的perm改为6就可以了

perm为2会导致代码无法消费dlq队列的

70e761af148adb72ab96c51e64c84b88.png

原文:https://www.cnblogs.com/ruguomeiyouni/p/11599426.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值