分析业务日志发现:每天4点左右会报少量的”[TIMEOUT_CLEAN_QUEUE]broker busy, start flow control for a while, period in queue: 206ms, size of queue: 5“错误
Broker设置每天自动清理文件的时间是4点中,和Timeout时间比较吻合 ,那么问题可能就是因为清理文件造成IO突增,导致写数据超时;
修改如下配置:
sendMessageThreadPoolNums=64
useReentrantLockWhenPutMessage=true
waitTimeMillsInSendQueue=600
并部署了3:30~4:30之间的nmon监控,后续分析下nmon监控是否有IO、Cpu等资源的突增。