总体目标
实现输入特定的场景(连接数、消息频率、消息大小、QoS),计算出 EMQ X MQTT Broker 需要的 CPU 核数、内存数、磁盘数。
计算流程
总流程
在计算多出来的 CPU 和内存的时候,按照以下步骤计算:

吞吐量 = 连接 * 消息频率 |
起步价
提供每个连接特定场景(TPS)下的基础配置,即使实际场景消息频率、尺寸比基础配置低,计算的时候也按照基础配置为起步价,防止从头算起导致到后面失真。
10万连接起步配置为 x 核 x GB 内存,每增加 x 个连接, CPU 增加 x%, 内存增加 x%
| 连接 | TPS | TPS/连接/分 | CPU | 内存 | 节点数 |
|---|---|---|---|---|---|
| 1000 | 6000 | 360 | 2 | 4 | 2 |
| 5000 | 6000 | 72 | 2 | 4 | 2 |
| 10000 | 9000 | 54 | 2 | 4 | 3 |
| 15000 | 9000 | 36 | 2 | 4 | 3 |
| 20000 | 9000 | 27 | 2 | 4 | 3 |
| 25000 | 12000 | 28 | 4 | 8 | 2 |
| 30000 | 12000 | 24 | 4 | 8 | 2 |
| 50000 | 12000 | 14 | 4 | 8 | 2 |
| 100000 | 18000 | 10 | 4 | 8 | 3 |
| 200000 | 18000 | 5 | 4 | 8 | 3 |
| 300000 | 24000 | 4 | 8 | 16 | 2 |
| 400000 | 36000 | 5 | 8 | 16 | 3 |
| 500000 | 36000 | 4 | 8 | 16 | 3 |
| 1000000 | 36000 | 2 | 8 | 32 | 3 |
v1.5.2