erlang虚拟机占用cpu过高

EMQX 版本

5.1.4
发现在没有客户端进行消息发送的时候,docker服务cpu使用率很高。后续发现是beam.smp进程,scheduler很多,这些scheduler是干什么用的呢? 能不能有什么方法限制不要这么多scheduler



您图里面的 773.3% 如果是在没有流量的情况下达到的,那就是个 bug。
可以用:observer_cli 看看是什么线程在占用。

远程发现是 healthy check 用了 emqx ctl status 导致,考虑后续在 docker 镜像中增加 curl 依赖。使用 /status 来做 health check

5.6 (现在最新版本 5.8.4) 优化了 emqx ctl 命令的资源占用。应该不需要 curl 命令。

healthcheck:
test: “bash -c "exec 3<>/dev/tcp/localhost/18083; echo -e ‘GET /api/v5/status HTTP/1.1\r\nhost: localhost\r\nConnection: close\r\n\r\n’ >&3; grep -qz ‘emqx is running’ <&3"”
interval: 5s
timeout: 5s
retries: 5