测试目的

测试 EMQ X 企业版 4.3.4 单节点每秒 10 万 QoS 1、payload 1KB 的消息桥接至 Kafka 集群所需 EMQ X 资源及响应时间等性能指标。

测试架构

测试架构

测试环境、机器配置及测试工具

测试环境

腾讯云南京区 VPC

测试工具

XMeter 企业版 v3.0

EMQ X、Kafka 集群配置、测试机配置

服务 数量 版本 操作系统 CPU 内存 云主机型号
EMQ X 1 企业版 v4.3.4 Centos 7.8 64核 128G C5.16xlarge128
Kafka 3 2.3.0 Centos 7.8 16核 32G C5.4xlarge32
XMeter 管理机 2 3.0 Centos 7.3 8核 16G C3.2xlarge16
XMeter 压力机 5~8 / Centos 7.3 8核 16G C3.2xlarge16

测试场景

如测试架构图中所示,XMeter 压力机模拟 10 万 MQTT 客户端 向 EMQ X 发起连接,新增连接速率为每秒 2000,客户端心跳间隔(keep alive)300秒。所有连接成功后每个客户端每秒发送一条 QoS 为 1、payload 为 1kB 的消息,所有消息通过规则引擎桥接转发至 Kafka 3 节点集群。

测试执行1个小时。

规则引擎配置如下:

  • Kafka 资源设置

    Kafka 资源设置

  • Kafka 规则设置

    Kafka 规则设置 1

    Kafka 规则设置 2

    • Produce 类型:异步,ACK 策略:learder only,缓存模式:Memory
    • 使用了数据压缩 gzip
    • Kafka 主题为 12 个分区,1 个副本

      Kafka 设置情况

测试总结

经过测试,EMQ X 64C128G 配置下可以支持 10 万连接、每秒 10 万 QoS 1、payload 1kB 的消息桥接转发至Kafka,消息吞吐期间,EMQ X 所在机器 CPU user 使用范围 69% ~73%,CPU idle 平均 20%。

详细测试结果

详细测试结果请填写右侧表单获取完整版 PDF 文件。

想要获取完整版?

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