Node.js可以与Jemalloc(https://github.com/nodejs/node/issues/21973)一起使用。在大多数情况下,这会缩短RSS,这是我面临的巨大问题。
但是我找不到关于如何在Jemalloc上,在机器上或在docker中使用节点的任何信息。
有人可以帮忙吗?
答案 0 :(得分:2)
我刚刚经历了将nodejs应用切换到jemalloc的过程,这是我在Debian Stretch上完成的过程:
安装jemalloc:
LoggingInInterceptor lii = new LoggingInInterceptor();
lii.setLimit(limit);
找到jemalloc二进制文件:
sudo apt-get install libjemalloc-dev
在/ usr / lib / ...等以.so结尾的文件夹中查找文件,例如,路径可能为 /usr/lib/x86_64-linux-gnu/libjemalloc.so
配置服务器以对所有程序使用jemalloc:
sudo find / -name "*jemalloc*"
sudo nano /etc/ld.so.preload
/path/to/jemalloc/binary
替代:仅将jemalloc用于nodejs
在bash中执行
cat /proc/<PID OF NODEJS>/smaps | grep jemalloc
在启动nodejs进程之前