RocketMQ使用的版本是:4.9.2
nameserver部署了 3 个节点 broker 部署了 5 台物理机,每台 1 主 1 从,dledge集群 机子配置:3台(16 核 128 G内存) + 2台(16 核 64 G内存)
【broker】配置文件: brokerClusterName = RaftCluster brokerName=39.3-broker0 listenPort=30911 namesrvAddr=10.254.39.1:9876;10.254.39.2:9876;10.254.39.3:9876 storePathRootDir=/data/rocketmq-4.9.2/dledger/store/node00 storePathCommitLog=/data/rocketmq-4.9.2/dledger/store/node00/commitlog enableDLegerCommitLog=true dLegerGroup=group-10.254.39.3 dLegerPeers=n30-10.254.39.3:40911;n31-10.254.39.3:40912;n32-10.254.39.3:40913
dLegerSelfId=n30
brokerIP1=10.254.39.3
deleteWhen=04 fileReservedTime=48 brokerRole=ASYNC_MASTER flushDiskType=ASYNC_FLUSH
#发送消息线程等待时间,默认200ms waitTimeMillsInSendQueue=400
#发送消息的最大线程数,默认1 sendMessageThreadPoolNums=16 #使用可重入锁 useReentrantLockWhenPutMessage=true
#开启临时存储池 transientStorePoolEnable=true #开启Slave读权限(分担master 压力) slaveReadEnable=true #关闭堆内存数据传输 transferMsgByHeap=false #开启文件预热 warmMapedFileEnable=true
【jvm配置】仅调整了堆内存 ... JAVA_OPT="${JAVA_OPT} -server -Xms20g -Xmx20g" ...
每台机子上都执行过 rocketmq-4.9.2/bin/os.sh,改了内核相关参数
接口压测的时候遇到的问题:(该接口无db读写操作,无其他复杂业务,仅查redis和rocketmq发消息) 1、吞吐量上不去,生产者用sync发送消息,吞吐量只有3000多 2、日志很多报错信息 ①、[TIMEOUT_CLEAN_QUEUE]broker busy, start flow control for a while, period in queue: 402ms, size of queue: 92 ②、[PCBUSY_CLEAN_QUEUE]broker busy, start flow control for a while, period in queue: 357ms, size of queue: 19 ③、Connection reset by peer
请帮忙看下是哪里的问题
原提问者GitHub用户Mark110513
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
sendMessageThreadPoolNums 设置有点小了,请求队列里的请求处理不完,超时了
原回答者GitHub用户cserwen
阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。