springboot整合RocketMQ自身踩坑记录-创新互联

1.win10环境下发送消息失败,提示磁盘空间不足
service not available now, maybe disk full, CL: 0.93 CQ: 0.93 INDEX: 0.93, m

此处的原因是电脑上C盘的剩余空间不多。RocketMQ的broker数据存储默认的目录是在C盘的当前用户文件夹下的store目录,需要有4G的空闲空间才能正常运行。

创新互联建站专注于定兴企业网站建设,成都响应式网站建设公司,商城网站建设。定兴网站建设公司,为定兴等地区提供建站服务。全流程按需网站开发,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务解决方案(二者选其一)
  1. 建立软链接。可以把store目录链接到其余空闲空间较多的磁盘目录中。

  1. 修改conf/broker.conf。在该文件末尾加上以下配置。

storePathRootDir=d:/logs/rocketmq/data/store
storePathCommitLog=d:/logs/rocketmq/data/store/commitlog
storePathIndex=d:/logs/rocketmq/data/store/index
storePathConsumeQueue=d:/logs/rocketmq/data/store/consumequeue
2.MQBrokerException: CODE: 1 DESC: create mapped file failed, server is busy or broker 解决方案

发现jdk是32位的,换成64位的oracle jdk就可以了,且jdk版本必须高于等于jdk8。

判断jdk是否64位可在命令行中输入java -version,如果有显示64-Bit的字样就是64位的,没有的话大概率是32位的

3.maven依赖和配置文件

pom.xml中添加RocketMQ的相关依赖(后两个依赖的version需和自己安装的版本号一致)

org.apache.rocketmqrocketmq-spring-boot-starter2.2.2org.apache.rocketmqrocketmq-client5.0.0-ALPHAorg.apache.rocketmqrocketmq-common5.0.0-ALPHA

yml配置

rocketmq:
  #nameservice服务器地址(多个以英文逗号隔开)
  name-server: 127.0.0.1:9876
  #生产者配置
  producer:
    group: my-group  # 指定发送者组名
    send-message-timeout: 6000 # 发送消息超时时间,单位:毫秒。默认为 3000 。
    compress-message-body-threshold: 4096 # 消息压缩阀值,当消息体的大小超过该阀值后,进行消息压缩。默认为 4 * 1024B
    max-message-size: 4194304 # 消息体的大允许大小。。默认为 4 * 1024 * 1024B
    retry-times-when-send-failed: 2 # 同步发送消息时,失败重试次数。默认为 2 次。
    retry-times-when-send-async-failed: 2 # 异步发送消息时,失败重试次数。默认为 2 次。
    retry-next-server: false # 发送消息给 Broker 时,如果发送失败,是否重试另外一台 Broker 。默认为 false
4.bin目录和conf目录中一些配置文件的修改
  1. 修改runserver.cmd中的JVM参数值

原参数值

set "JAVA_OPT=%JAVA_OPT% -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

修改后的参数值

set "JAVA_OPT=%JAVA_OPT% -server -Xms256m -Xmx512m"
  1. 修改runbroker.cmd中的JVM参数值

原参数值

set "JAVA_OPT=%JAVA_OPT% -server -Xms2g -Xmx2g"

修改后的参数值

set "JAVA_OPT=%JAVA_OPT% -server -Xms256m -Xmx512m"
  1. 修改runbroker.cmd中的MaxDirectMemorySize

原参数值

set "JAVA_OPT=%JAVA_OPT% -XX:MaxDirectMemorySize=15g"

修改后的参数值

set "JAVA_OPT=%JAVA_OPT% -XX:MaxDirectMemorySize=1024m"
  1. 在conf/broker.conf中添加配置

namesrvAddr=127.0.0.1:9876
listenPort=10911
#broker监听的ip
broketIP1=127.0.0.1

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


分享名称:springboot整合RocketMQ自身踩坑记录-创新互联
文章源于:http://scyanting.com/article/jieji.html