rocketmq常见问题及使用 新手篇
一 部署阶段
1.启动命令
nameServer启动:nohup sh bin/mqnamesrv -n ip地址:9876 &
broker启动:nohup sh bin/mqbroker -n ip地址:9876 autoCreateTopicEnable=true -c conf/broker.conf &
注:autoCreateTopicEnable配置是否自动创建主题
2.服务关闭命令
nameServer关闭: sh bin/mqshutdown namesrv
broker关闭: sh bin/mqshutdown broker
3.启动Broker如果因为内存不足失败,需要编辑如下两个配置文件,修改JVM内存大小
vi runbroker.sh
vi runserver.sh
参考设置:
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
在Linux中,如果仍然内存溢出,可以尝试配置swap空间。
4.在云服务器上部署要注意的问题
4.1 要在安全组中配置rocketmq使用到的几个端口号为开放状态,如下图,否则会出现连接不上的情况
4.2 云服务器实例的公网访问一般通过私有网卡映射完成,在实例内部无法查询到公网IP地址。
所带来的影响是,软件自动识别的出的IP地址是内网地址,无法访问,需要显式的配置公网IP地址。
在rocketmq中如何配置,会在下面说明。
二 生产者服务发送消息
1.代码报错:connect to <x.x.x.x:10911> failed或者sendDefaultImpl call timeout。
请检查broker启动日志中的brokerIP地址和生产者所在地址是否能连通
The broker[broker-a, x.x.x.x:10911] boot success. serializeType=JSON and name server is x.x.x.x:9876
这里默认是系统自动识别的IP地址,可能是无法连接的内网地址。
需要在conf/broker.conf中配置brokerIP1,配置为公网IP
为何broker和生产者需要联通,可以参考下图理解。
生产者服务需要和nameServer以及broker进行数据交换,所以它们之间的网络需要是联通的。
同理,消费者服务也需要和nameServer以及broker网络联通。
2.消息发送成功后,就可以在管理控制台
rocketmq-console中看到发送的消息了。
- 【新手教程】CentOS 7.2 1611 使用yum搭建lamp环境常见问题
- python------创建和使用类新手碰到的一些常见小问题和一些小知识点
- Windows 7下使用wubi安装Ubuntu9.04+新手常见问题
- Android studio新手使用常见一些问题及解决方法
- github工具使用新手常见问题:Warning: Permanently added the RSA host key for IP address 'X.X.X.X' to the
- RocketMQ 使用及常见问题
- RocketMQ 使用及常见问题
- 新手使用python常见问题
- 新手使用MindFusion.Diagramming for WinForms常见问题集锦(二)
- 使用ActiveX控件开发网页常见的问题
- 新手常见安全问题
- WAS 5.x中数据源的配置使用及其常见问题- -
- 在ASP.NET中使用Session常见问题集锦
- 在ASP.NET中使用Session常见问题集锦
- ASP.Net开发新手常见问题备忘录
- WAS 5.x中数据源的配置使用及常见问题
- delphi中TreeView使用常见问题
- 在ASP.NET中使用Session常见问题集锦
- 在asp.net中使用session常见问题集锦
- E680I使用上的常见问题小结