0%

20240827-使用rocketmq

20240827-使用rocketmq

1
sudo yum install java-1.8.0-openjdk-devel.x86_64

rocketmq-all-5.1.0-bin-release

运行namesrv

nohup sh mqnamesrv &

修改run broken.sh 添加如下行

1
JAVA_OPT="${JAVA_OPT}  --add-exports=java.base/sun.nio.ch=ALL-UNNAMED"

然后启动broker

1
2
3
4
5
6
7
8
$ sh ./bin/mqbroker -n 172.16.40.24:9876 -c conf/broker.conf
The broker[broker-a, 172.16.40.24:10911] boot success. serializeType=JSON and name server is 192.168.31.99:9876


$ sudo firewall-cmd --zone=public --add-port=9876/tcp --permanent
$ sudo firewall-cmd --zone=public --add-port=10911/tcp --permanent
$ sudo firewall-cmd --reload

通过mqadmin创建 Topic。

1
2
3
4
5
 $ ./bin/mqadmin updateTopic -t TopicTest -c DefaultCluster -n 172.16.40.24:9876
create topic to 192.168.31.99:10911 success.
TopicConfig [topicName=TopicTest, readQueueNums=8, writeQueueNums=8, perm=RW-, topicFilterType=SINGLE_TAG, topicSysFlag=0, order=false, attributes={}]


producer

1
2
3
$ export   NAMESRV_ADDR=172.16.40.24:9876
$ ./bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
$ ./bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

运行rocketmq-dashboard

docker

1
2
3
4
5
6
7
8
9
10
11
12
13
14
version: '3.3'
services:
rocketmq-dashboard:
image: apacherocketmq/rocketmq-dashboard:latest
container_name: rocketmq-dashboard
networks:
- rocketmq
ports:
- 8080:8080
environment:
- JAVA_OPTS=-Drocketmq.namesrv.addr=172.16.40.24:9876
networks:
rocketmq:
driver: bridge

打开防火墙

1
2
$ sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
$ sudo firewall-cmd --reload