文章目录
RocketMQ介绍
官网地址:https://rocketmq.apache.org/zh/
RocketMQ是一个分布式消息中间件,具有高性能、高可靠、高实时和分布式等特点。 它支持事务消息、顺序消息、批量消息、定时消息和消息回溯等功能。RocketMQ的核心组件包括Producer、Consumer、Broker和NameServer,这些组件共同工作,提供了低延迟和高吞吐量的消息处理能力。
RocketMQ的特点包括:
高性能:支持万亿级吞吐量,满足微服务和大数据场景需求。
高可靠:提供金融级稳定性,广泛用于交易核心链路。
高实时:实现实时的消息订阅和消费机制。
分布式:Producer、Consumer和队列都可以分布式部署,支持水平扩展。
严格的消息顺序:通过发送到同一队列保证消费顺序。
丰富的消息拉取模式:支持推(Push)和拉(Pull)两种模式,并提供多种消息协议。
亿级消息堆积能力:确保在高负载情况下消息不会丢失。
较少的依赖:采用Shared-nothing架构,零外部依赖,确保系统稳定。
RocketMQ的应用场景包括云边端一体化数据处理、微服务架构中的消息治理、Serverless应用场景等。它支持海量Topic需求,可以与任意系统建立连接,适用于构建流式ETL、数据管道和数据湖等。RocketMQ还被广泛应用于电商项目、订单交易系统等高并发系统中,帮助提升开发效率和系统稳定性。
基于Linux服务部署RocketMQ(单机)
配置JDK环境
参考另一篇教程:CentOS7安装配置JDK环境 保姆级教程
下载RocketMQ
官方下载地址
这里我们可以直接下载二进制(Binary)的包(如果有需要自己编译的话可以下载源码包(Source))
下载完后我们需要上传到服务器上面。
这里推荐直接在服务器上使用命令下载,这样就可以跳过上传这一步操作了
# 这里我们下载版本是5.2.0(就冲这个版本号 “我爱你”)
# 使用wget命令
wget https://dist.apache.org/repos/dist/release/rocketmq/5.2.0/rocketmq-all-5.2.0-bin-release.zip
# 使用curl命令
curl -O https://dist.apache.org/repos/dist/release/rocketmq/5.2.0/rocketmq-all-5.2.0-bin-release.zip
部署RocketMQ
1、解压
# 解压
unzip rocketmq-all-5.2.0-bin-release.zip
# 移动到固定位置(这里可以使用自己的位置)
cp -r rocketmq-all-5.2.0-bin-release /usr/local/rocketmq
2、修改VM参数
RocketMQ默认的内存分配比较大,机器内存比较小的话需要调整一下。具体配置按需调整
runbroker.sh
3、配置环境变量
echo "export ROCKETMQ_HOME=/opt/rocketmq" >> ~/.bashrc
echo "export PATH=\$PATH:\$ROCKETMQ_HOME/bin"