注意,安装rocketmq需要提前安装jdk

1、下载

官网:https://rocketmq.apache.org/dowloading/releases/
执行下载命令:wget [https://archive.apache.org/dist/rocketmq/4.8.0/rocketmq-all-4.8.0-bin-release.zip](https://archive.apache.org/dist/rocketmq/4.8.0/rocketmq-all-4.8.0-bin-release.zip) --no-check-certificate
解压:unzip rocketmq-all-4.8.0-bin-release.zip
重命名:mv rocketmq-all-4.8.0-bin-release rocketmq

2、配置RocketMq

2.1 创建数据存储以及相关文件夹

  1. [user@iZ88faorjqhZ]$ mkdir /home/soft/rocketmq/store
  2. [user@iZ88faorjqhZ]$ mkdir /home/soft/rocketmq/store/commitlog
  3. [user@iZ88faorjqhZ]$ mkdir /home/soft/rocketmq/store/consumequeue
  4. [user@iZ88faorjqhZ]$ mkdir /home/soft/rocketmq/store/index

2.2 修改broker.conf配置文件

新增如下配置:

  1. #所属集群名称
  2. brokerClusterName = DefaultCluster
  3. #broker 名字,注意此处不同的配置文件填写的不一样
  4. brokerName=broker-a
  5. #0 表示 Master,>0 表示 Slave
  6. brokerId=0
  7. brokerIP1=127.0.0.1
  8. #nameServer 地址,分号分割
  9. namesrvAddr=127.0.0.1:9876
  10. #在发送消息时,自动创建服务器不存在的 topic,默认创建的队列数
  11. defaultTopicQueueNums=4
  12. #是否允许 Broker 自动创建 Topic,建议线下开启,线上关闭
  13. autoCreateTopicEnable=true
  14. #是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
  15. autoCreateSubscriptionGroup=true
  16. #Broker 对外服务的监听端口
  17. listenPort=10911
  18. #删除文件时间点,默认凌晨 4 点
  19. deleteWhen=04
  20. #文件保留时间,默认 48 小时
  21. fileReservedTime=120
  22. #commitLog 每个文件的大小默认 1G
  23. mapedFileSizeCommitLog=1073741824
  24. #ConsumeQueue 每个文件默认存 30W 条,根据业务情况调整
  25. mapedFileSizeConsumeQueue=300000
  26. #destroyMapedFileIntervalForcibly=120000
  27. #redeleteHangedFileInterval=120000
  28. #检测物理文件磁盘空间
  29. diskMaxUsedSpaceRatio=88
  30. #存储路径
  31. storePathRootDir=/home/soft/rocketmq/store
  32. #commitLog 存储路径
  33. storePathCommitLog=/home/soft/rocketmq/store/commitlog
  34. #消费队列存储路径存储路径
  35. storePathConsumeQueue=/home/soft/rocketmq/store/consumequeue
  36. #消息索引存储路径
  37. storePathIndex=/home/soft/rocketmq/store/index
  38. #checkpoint 文件存储路径
  39. storeCheckpoint=/home/soft/rocketmq/store/checkpoint
  40. #abort 文件存储路径
  41. abortFile=/home/soft/rocketmq/store/abort
  42. #限制的消息大小
  43. maxMessageSize=65536
  44. #flushCommitLogLeastPages=4
  45. #flushConsumeQueueLeastPages=2
  46. #flushCommitLogThoroughInterval=10000
  47. #flushConsumeQueueThoroughInterval=60000
  48. #Broker 的角色
  49. #- ASYNC_MASTER 异步复制 Master
  50. #- SYNC_MASTER 同步双写 Master
  51. #- SLAVE
  52. brokerRole=ASYNC_MASTER
  53. #刷盘方式
  54. #- ASYNC_FLUSH 异步刷盘 #- SYNC_FLUSH 同步刷盘
  55. flushDiskType=ASYNC_FLUSH
  56. #checkTransactionMessageEnable=false
  57. #发消息线程池数量
  58. #sendMessageThreadPoolNums=128
  59. #拉消息线程池数量
  60. #pullMessageThreadPoolNums=128

2.3 编辑启动脚本

主要是修改占用的内存大小:
**vim ./bin/runserver.sh**
JAVA_OPT=”${JAVA_OPT} -server -Xms200m -Xmx200m -Xmn200m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=200m”
**vim ./bin/runbroker.sh**
JAVA_OPT=”${JAVA_OPT} -server -Xms200m -Xmx200m -Xmn200m”

3、配置环境变量

修改环境变量vim ~/.bash_profile
新增以下内容PATH=/home/soft/rocketmq/bin:$PATH
image.png
引入变量 source ~/.bash_profile

4、启动

4.1 启动rocketmq

启动之前,要开放服务器的9876,10911,10909这几个端口,切记。

进到bin目录下,先启动nameServer,然后启动broker:
nohup sh mqnamesrv &
nohup sh mqbroker -n 47.104.146.31:9876 -c /home/soft/rocketmq/conf/broker.conf &

4.2 通过jps查看是否存在rocketmq相关进程

  1. jps
  2. 4066 NamesrvStartup
  3. 4123 Jps
  4. 4092 BrokerStartup

5、安装rocketmq控制台

下载地址:
https://github.com/apache/rocketmq-externals/releases/tag/rocketmq-console-1.0.0
1、Idea 打开源码
2、mvn clean package -Dmaven.test.skip=true
3、java -jar target/rocketmq-console-ng-1.0.0.jar
4、访问:localhost:8080/