测试环境及工具

  • EMQ X 版本:4.0.4
  • 测试工具:XMeter 企业版私有部署、mqtt-xmeter 插件 1.14
  • 测试环境:青云,上海 1 区内网
  • EMQ X 服务器配置:1 台,centos 7.5,16 核 32G,内网 ip: 192.168.0.5
  • XMeter 服务器配置:2 台,centos 7.3,4 核 8G,内网 ip: 192.168.0.8, 192.168.0.10
  • 压力机配置:10 台(每台模拟 20 万 MQTT TCP 客户端或 10 万 SSL 连接客户端),centos 7.3,8 核 16G

测试场景

MQTT TCP

连接方式为 TCP 时,测试 200 万客户端分别以每秒 1k、2k、4k、6k、8k、10k、12k、14k、16k 的速率接 入 EMQ X,连接数达到 200 万后保持大约 10 分钟的连接。

在各场景下测试 EMQ X 的响应时间和资源消耗情况,并找出 EMQ X 服务器在当前配置下的性能拐点。

MQTT SSL 单/双向

连接方式为 SSL 时,测试分为压力测试和 30 万连接测试:

  1. 压力测试:使用单向 SSL 以每秒 500 的新增连接速率接入 EMQ X,测试在当前服务器硬件配置下最高 接入量及资源使用情况。

  2. 分别测试 SSL 单向和双向 30 万客户端分别以每秒 300、500、800、1k、1.2k、1.4k 速率接入 EMQ X, 连接数达到 30 万后保持大约 10 分钟的连接。 在各场景下测试 EMQ X 的响应时间和资源消耗情况,并找出 EMQ X 服务器在当前配置下的性能拐点。

测试结果

TCP 200 万连接

当连接速率达到 15k 左右时测试后期出现少量连接失败,当连接速率设置为 18k 时服务器内存 基本耗尽。

不同速率下的平均响应时间、CPU 用户态占用率、内存消耗曲线图 image.png

TCP 连接下具体测试结果

image.png

image.png

想要获取完整版?

下载地址将会发送至您填写的邮箱