RocketMQ默认的端口号如下:
- Namesrv:9876
- Broker:10911
请注意,这些是默认的端口,你可以在RocketMQ的配置文件中修改这些端口。同时,如果你运行了多个broker实例或namesrv实例,那么每个实例需要使用不同的端口。
两个Namesrv实例,还有2对 Broker实例主和备,该怎么配置?
在这种情况下,你可以分别为每个Broker实例创建一个配置文件,并在每个文件中指定相应的Namesrv地址、Broker名称和角色(Master或Slave)。
以下是具体步骤:
1. Namesrv实例
Namesrv没有特定的配置文件,所有配置都是在启动命令中指定的。如果你想要运行多个Namesrv实例,你只需要为每个实例指定不同的端口号。例如:
nohup sh mqnamesrv -n localhost:9876 > namesrv1.log 2>&1 &
nohup sh mqnamesrv -n localhost:9877 > namesrv2.log 2>&1 &
在这个例子中,我们启动了两个Namesrv实例,分别监听9876和9877端口。
2. Broker实例
对于Broker实例,你可以在RocketMQ的conf
目录下创建4个新的配置文件,例如:
- broker-a-master.properties
- broker-a-slave.properties
- broker-b-master.properties
- broker-b-slave.properties
然后在每个配置文件中添加相应的内容。
例如,在broker-a-master.properties
中:
brokerClusterName=DefaultCluster
brokerName=broker-a
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=SYNC_MASTER
flushDiskType=ASYNC_FLUSH
autoCreateTopicEnable=true
namesrvAddr=localhost:9876;localhost:9877
在broker-a-slave.properties
中:
brokerClusterName=DefaultCluster
brokerName=broker-a
brokerId=1
deleteWhen=04
fileReservedTime=48
brokerRole=SLAVE
flushDiskType=ASYNC_FLUSH
autoCreateTopicEnable=true
namesrvAddr=localhost:9876;localhost:9877
同样的,你也需要为broker-b配置对应的master和slave配置。
然后,你可以使用以下命令分别启动这4个Broker实例:
nohup sh mqbroker -c ../conf/broker-a-master.properties > broker-a-master.log 2>&1 &
nohup sh mqbroker -c ../conf/broker-a-slave.properties > broker-a-slave.log 2>&1 &
nohup sh mqbroker -c ../conf/broker-b-master.properties > broker-b-master.log 2>&1 &
nohup sh mqbroker -c ../conf/broker-b-slave.properties > broker-b-slave.log 2>&1 &
注意,每个Broker实例都需要一个独立的配置文件,且brokerName
和brokerId
应该是唯一的。在每对Master和Slave中,brokerName
应该相同,而brokerId
在Master中应为0,在Slave中应为1。
以上命令假定你在RocketMQ的bin目录中运行。如果你在其他位置运行,你可能需要修改命令中的路径。
另外,如果你想要在后台运行这些命令,你可以使用nohup
命令,并将输出重定向到一个日志文件,如上面命令中的namesrv1.log
,namesrv2.log
,broker-a-master.log
,`broker-a-slave
在Linux系统中,你可以使用ps
命令查看正在运行的RocketMQ Namesrv和Broker实例。以下是如何使用这个命令:
-
打开命令行窗口。
-
输入以下命令来查看正在运行的Namesrv实例:
ps -ef | grep mqnamesrv
如果Namesrv实例正在运行,你将看到类似以下的输出:
root 12345 1 0 Jun21 ? 00:00:00 sh mqnamesrv
- 输入以下命令来查看正在运行的Broker实例:
ps -ef | grep mqbroker
如果Broker实例正在运行,你将看到类似以下的输出:
root 23456 1 0 Jun21 ? 00:00:00 sh mqbroker -c ../conf/2m-noslave.properties
在这些命令的输出中,你可以看到启动Namesrv和Broker的命令,以及关联的进程ID。
对于你的特定情况,你需要看到两个Namesrv实例和四个Broker实例(每个Broker一对主从)。
请注意,你可能需要根据实际的Namesrv和Broker配置调整这些命令。例如,如果你使用了不同的配置文件或者命令选项,那么你需要在grep
命令中指定相应的文本。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/181601.html