emqx 5.1.3 集群 发送消息很慢

EMQX 版本

5.1.3

EMQX 安装部署方式

EMQX 集群情况

手动集群 两台机器

服务器(运行 EMQX 的机器)硬件配置

4核16g

服务器操作系统和平台

aws linux

服务端参数优化情况

按照文档已优化

压力机硬件配置

压力机使用的测试工具

压力机参数优化情况

在 EMQX 中启用的功能

测试场景

具体问题

两台5.1.3 做了集群后消息很慢。大概延迟5s,单机的话就很快

集群的两台机器是在一个局域网里的吗?还是跨数据中心的?

两台一个区的服务器。内走内网互通

是做性能测试比较慢?还是单发少数的消息就比较慢?或者你可以把场景详细描述一下?

单发就很慢 擦汗不多延迟5s 很慢 很卡

  • 你打开 debug 日志了没?
  • Payload 有多大?
  • 使用 ping 工具观察两个节点之间的网络延迟。
  • 使用了什么插件或者功能,使用了数据集成?比如 http/mysql 认证功能,规则引擎,自定义插件等。

然后我建议你打开两个节点的 debug 日志,发送消息的时候观察日志里的消息流程。

能麻烦提供一下配置文件吗?

那个配置文件 emqx.conf吗

1 个赞

打开debug了 只不过日志不是很好分析


这是两台服务器日志

我就配置了数据桥接的上下线和http认证

能麻烦 tail 一段发送一条消息期间的文本日志上传一下吗?这个日志截图应该是不全的,不太好分析时间花在哪里了,另外http认证服务器是部署在同一个内网里面的吗?

从日志里没有看到消息的延迟,除了两个节点之间创建 RPC 通道花了一秒之外,其他消息都比较正常。RPC 通道会在第一次节点之间发送消息的时候创建,后面会一直使用这个通道。

新建 文本文档 (3).zip (7.2 KB)
我连续发送了两条数据:0001 0633 0c01 0101 b7ff 同时打开了两个mqttx客户端,发现第一条消息接受很快,第二条会在5s后收到,有的时候会延时10s。出现这种状况,当我退出集群又都正常。
当我连续发2条时中间相隔5s 当我连续发4条时 第一条和最后一条间隔10s。我不明白这是为什么。


发现了这个:

2023-08-21T09:39:22.033620+00:00 [error] event=connect_to_remote_server peer="emqx@172.31.12.185" result=failure reason="timeout"

  • 你在两个节点之间执行多次 telnet 测试,端口 5370,观察 TCP 连接建立的速度。
  • 使用 ping 工具观察两个节点之间的网络延迟。

![IMG_0068|231x500](upload://tLaHgoScJ2uEqtYh1EGd938o0Oz.png网络几乎没有延迟

能用emqx Dashboard自带的websocket客户端测试一下消息的发送速度吗?

你好我测试了一下websocket的速度很快