数据交互时间过长

环境信息

  • EMQX 版本:4.2.14
  • 操作系统及版本:centos7.9
  • 其他 http auth插件鉴权

问题描述

现在是3台emqx集群,一千来个连接(生产者)发数据,两个消费端测试:
经过查询发现从设备端到emqx转发给消费端,消费端在回复给设备端,中间经过emqx一来一回花费时间有很多超过1s甚至有5秒的,消费端处理时间一般都是稳定在50ms;针对这个问题,很难排查出是网络问题还是emqx转发出了问题(因为很难通过emqx日志看到消息接收到的时间、转发用的时间、转发出去的时间),发现三分之二是正常的(500ms),有三分之一是不正常的(1s以上还有6秒的)

有没有一种方法能准确把emqx的接收到数据的时间、转发用时、转发时间打印出来,好排查哪里出了问题

配置文件及日志

4.2的话,你可以将日志等级设置为 debug, 根据日志的时间戳进行分析
或者使用 log trace 追踪你的消息, 具体见下面的链接
然后我看见你的其他里面写到了 http auth 插件,建议你同时也尝试去掉鉴权后测试时间消耗
https://www.emqx.io/docs/en/v4.2/getting-started/log.html#log-trace-2

有没有可能emqx转发时候数据排队了造成时间过长,,有没有什么办法看看emqx的哪个队列之类的排除这个问题

打开某个可能慢的客户端的DEBUG等级的追踪日志。然后检查下里面每个事件点的差值,or 发到这里,我们来一起看看