请问一下,为什么mqtt服务器在客户端连接不是很多的情况下,每秒的消息发送大概4万左右(订阅),CPU会很高呢

请问一下,为什么mqtt服务器在客户端连接不是很多的情况下,每秒的消息4万左右,CPU会很高呢,主要是什么占用比较高

可能性有很多,首先本身你的 CPU 如何,其次每秒 4w 消息,是指包含了流入流出还是仅流入?消息的平均大小是多少?消息过大那么解析也会比较消耗 CPU,然后除了消息路由,你还有没有使用其他的功能,例如规则引擎等等,这些都可能占用 CPU。

消息流入是2000/秒,流出是4万/秒,没有规则引擎,消息的emqx_bench的压测模拟消息,没有设置消息体

你的 CPU 是几核的?

4核8G

你可以参考我们的 系统调优 文档,优化一下系统参数。

不过 4 核 8G 的 CPU,达到你目前这个吞吐,应该也已经差不多了。