搭建之前,先看了一下和kafka的对比,总结几点:
1.rocket更加轻量级,高可用方案更加简单,不再使用zk做主从和选举,rocketMq的所有broker节点的角色都是一样,上面分配的topic和对应的queue的数量也是一样的,Mq只能保证当一个broker挂了,把原本写到这个broker的请求迁移到其他broker上面,而并不是这个broker对应的slave升级。
2.性能上,单机写入和吞吐量,kafka完胜rocket
3.可靠性上,rocketMq完爆kafka。RocketMQ消息顺序,broker宕机,不会乱序;RocketMQ消费失败支持定时重试,每次重试间隔时间顺延;RocketMQ支持分布式事务。
4.应用性上,rocketMq支持更多舒服的可用性,消息 过滤;消息查询,定时消息等等。
1.下载rocketMq:
2.配置环境变量:
3.下载可视化工具,一个开源Maven项目,本地打包后运行这个boot项目就可以了:
4.启动nameServer:
start mqnamesrv.cmd
5.启动boker:
start mqbroker.cmd -n 127.0.0.1:9876 autoCreateTopicEnable=true
6.修改插件boot项目,app配置文件,指定nameServer服务ip和端口:
7.打包
进入 rocketmq-externals\rocketmq-console 文件夹,执行
mvn clean package -Dmaven.test.skip=true
8.运行可视化插件:
java -jar rocketmq-console-ng-1.0.1.jar
9.登录插件服务ip和端口: