EMQ X MQTT Broker 服务器配置计算

总体目标

实现输入特定的场景(连接数、消息频率、消息大小、QoS),计算出 EMQ X MQTT Broker 需要的 CPU 核数、内存数、磁盘数。

计算流程

总流程

在计算多出来的 CPU 和内存的时候,按照以下步骤计算:

get z

吞吐量 = 连接 * 消息频率

新增吞吐量小于 0, 不计算新增资源

新增吞吐量大于 0 ,按照以下方式计算:

消息 QoS = 1, 新增吞吐量增加 30%

消息 QoS = 2, 新增吞吐量增加 60%

吞吐量每增加1万: CPU 加 1 核、内存增加 2GB

额外需要消息流大小的 10% 的内存: 新增吞吐量 * 消息大小 * 10%

起步价

提供每个连接特定场景(TPS)下的基础配置即使实际场景消息频率、尺寸比基础配置低,计算的时候也按照基础配置为起步价,防止从头算起导致到后面失真。

10万连接起步配置为 x 核 x GB 内存,每增加 x 个连接, CPU 增加 x%, 内存增加 x%

连接TPSTPS/连接/分CPU内存节点数
10006000360242
5000600072242
10000900054243
15000900036243
20000900027243
250001200028482
300001200024482
500001200014482
1000001800010483
200000180005483
3000002400048162
4000003600058163
5000003600048163
10000003600028323