我正在 Linux 上运行 ejabberd 2.1.10 服务器 (Erlang R14B 03) 。我使用批处理工具创建 XMPP 连接并随机发送消息。ejabberd 接受了大部分连接。尽管连接不断增加,erlang:memory(total) 的值仍在一定范围内。
但是,如果我使用 top 命令检查 ejabberd 进程的内存使用情况,我可以观察到 ejabberd 进程的内存使用量不断增加。
但是,如果我使用 top 命令检查 ejabberd 进程的内存使用情况,我可以观察到 ejabberd 进程的内存使用量不断增加。
我可以看到 erlang:memory(total) 的值与 top 命令显示的内存使用量之间的差异不断增加。
请告诉我内存显示差异的原因。这是否是由于内存泄漏引起的?我有没有办法调试此问题?如果不是内存泄漏,那么额外的内存 (erlang 和 top 命令之间的差异) 用于什么?