大聪明教你学Java | Win10 环境下安装部署 RocketMQ

本文详细介绍了如何在Windows10环境下安装和配置RocketMQ,包括下载、解压、环境变量设置、启动命令以及针对不同JDK版本的JVM参数调整。作者分享了个人经验,并鼓励读者提问和交流。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

🍊作者简介: 不肯过江东丶,一个来自二线城市的程序员,致力于用“猥琐”办法解决繁琐问题,让复杂的问题变得通俗易懂。
🍊支持作者: 点赞👍、关注💖、留言💌~

关于消息队列,我们之前讲解过关于 RabbitMQ 的内容,今天咱们一起来聊一聊另一款消息队列中间件 —— RocketMQ。

RocketMQ 是阿里巴巴在2012年开发的分布式消息中间件,专为万亿级超大规模的消息处理而设计,具有高吞吐量、低延迟、海量堆积、顺序收发等特点。它是阿里巴巴双十一购物狂欢节和众多大规模互联网业务场景的必备基础设施。在同一年,阿里巴巴正式开源了 RocketMQ 的第一个版本,并且 RocketMQ 成为阿里巴巴的首选消息中间件,实现了内部应用的百分百接入。在2016年,RocketMQ在阿里云上开发了首个全托管服务,帮助大量数字化转型的企业构建现代应用,并开始体验大规模的云计算实践。同年,RocketMQ被捐赠给Apache基金会,并入选孵化器项目,旨在未来为更多开发者服务。

正好最近的项目中用到了 RocketMQ,借此机会和大家分享一下我学习 RocketMQ 的心得,今天就先讲第一篇内容 —— 如何在 Win10 环境下安装部署 RocketMQ。

📢 RabbitMQ的内容这里就不再赘述了,各位小伙伴可点击传送门:大聪明教你学Java | Win10 环境下安装部署 RabbitMQ

Windows 环境下安装部署 RocketMQ

首先我们需要在官网下载 RocketMQ 的安装包,这里我选择的是 RocketMQ 5.1.3 👇

在这里插入图片描述
下载完成后,我们将压缩包进行解压。待压缩包解压到指定目录后(目录中),我们开始配置环境变量 👇

在这里插入图片描述

变量名:ROCKETMQ_HOME

变量值:F:\RocketMQ\rocketmq-all-5.1.3-bin-release(即压缩包解压后的路径)

在这里插入图片描述

PATH下同样也需要新增一行:%ROCKETMQ_HOME%\bin
在这里插入图片描述
配置完成后,我们就可以尝试启动 RocketMQ 了。启动步骤也非常简单,在 cmd 窗口中切换到 RocketMQ 的解压缩目录,然后执行下面的命令即可 👇

start mqnamesrv.cmd

在这里插入图片描述

🔊 注: 因为 RocketMQ 在 runbroker.cmd 和 runserver.cmd 中启动的时候都指定了垃圾回收机制等 JVM 参数,默认在 JDK 1.8 上运行是可以的。如果小伙伴们使用的不是 JDK 1.8,那么就需要对 runbroker.cmd(Linux环境中对应 runbroker.sh) 和 runserver.cmd(Linux环境中对应 runserver.sh) 中的 JVM 配置进行修改。这里以 JDK11 为例,修改方式如下所示 👇

① 修改 runserver.cmd

set CLASSPATH=.;%BASE_DIR%conf;%BASE_DIR%lib\*;%CLASSPATH%

# 1. 修改jvm启动内存
set "JAVA_OPT=%JAVA_OPT% -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

# 2. 注释以下2行
rem set "JAVA_OPT=%JAVA_OPT% -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSParallelRemarkEnabled -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+CMSClassUnloadingEnabled -XX:SurvivorRatio=8 -XX:-UseParNewGC"
rem set "JAVA_OPT=%JAVA_OPT% -verbose:gc -Xloggc:"%USERPROFILE%\rmq_srv_gc.log" -XX:+PrintGCDetails -XX:+PrintGCDateStamps"

set "JAVA_OPT=%JAVA_OPT% -XX:-OmitStackTraceInFastThrow"
set "JAVA_OPT=%JAVA_OPT% -XX:-UseLargePages"
set "JAVA_OPT=%JAVA_OPT% -cp "%CLASSPATH%""

"%JAVA%" %JAVA_OPT% %*

② 修改 runbroker.cmd

rem ===========================================================================================
rem  JVM Configuration
rem ===========================================================================================

# 1. 修改jvm启动内存
set "JAVA_OPT=%JAVA_OPT% -server -Xms256m -Xmx256m"

# 2. 注释以下3行
rem set "JAVA_OPT=%JAVA_OPT% -XX:+UseG1GC -XX:G1HeapRegionSize=16m -XX:G1ReservePercent=25 -XX:InitiatingHeapOccupancyPercent=30 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:SurvivorRatio=8"
rem set "JAVA_OPT=%JAVA_OPT% -verbose:gc -Xloggc:%USERPROFILE%\mq_gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintAdaptiveSizePolicy"
rem set "JAVA_OPT=%JAVA_OPT% -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=30m"

set "JAVA_OPT=%JAVA_OPT% -XX:-OmitStackTraceInFastThrow"
set "JAVA_OPT=%JAVA_OPT% -XX:+AlwaysPreTouch"
set "JAVA_OPT=%JAVA_OPT% -XX:MaxDirectMemorySize=15g"
set "JAVA_OPT=%JAVA_OPT% -XX:-UseLargePages -XX:-UseBiasedLocking"
set "JAVA_OPT=%JAVA_OPT% -cp %CLASSPATH%"

"%JAVA%" %JAVA_OPT% %*

小结

本人经验有限,有些地方可能讲的没有特别到位,如果您在阅读的时候想到了什么问题,欢迎在评论区留言,我们后续再一一探讨🙇‍

希望各位小伙伴动动自己可爱的小手,来一波点赞+关注 (✿◡‿◡) 让更多小伙伴看到这篇文章~ 蟹蟹呦(●’◡’●)

如果文章中有错误,欢迎大家留言指正;若您有更好、更独到的理解,欢迎您在留言区留下您的宝贵想法。

你在被打击时,记起你的珍贵,抵抗恶意;
你在迷茫时,坚信你的珍贵,抛开蜚语;
爱你所爱 行你所行 听从你心 无问东西

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不肯过江东丶

您的鼓励将是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值