javascript - 在快速应用程序中调试内存泄漏

标签 javascript node.js express memory-leaks sharp

我的 express 应用程序存在内存泄漏。 RSS 内存从大约 80Mb 开始,随着时间的推移缓慢增长,在几天内达到大约 2-3Gb。我尝试使用 --inspect 标志启动进程并在 chrome 检查器中进行调试,但无法找出确切的问题。在这种情况下,一段时间内的对象分配并没有那么高。内存消耗最高的是字符串,如所附屏幕截图所示。谁能指出我正确的方向来解决这个漏洞? enter image description here

我还附上了 RSS 图。内存下降是由于关闭服务器。 enter image description here

平台:Linux - Ubuntu 18.04.5

最佳答案

嗯,这是一个本地模块 sharp 泄漏内存。它被用于图像处理应用程序。我们需要使用 libjemalloc 运行应用程序,这样可以更好地将未使用的内存释放回操作系统。我们可以使用以下命令设置内存分配器:

LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.1

关于javascript - 在快速应用程序中调试内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65419334/

相关文章:

node.js - tsc 后来自 tsconfig.json 的路径不起作用

javascript - Node.js分布式共享内存解决方案

javascript - 导出为 SVG 时在 amcharts.com 图表标题中为工件下划线

javascript - 如何减去两个数组的元素并将结果存储为javascript中的正数组?

node.js - RabbitMQ:如何限制消费率

angularjs - 自定义 req.session 属性值的更新似乎持续得不够快

node.js - Mongodb 和 Express 从 _id 中删除项目

javascript - 单击按钮隐藏div

javascript - Eloquent Javascript,listToArray。当输入数组有超过 3 个元素时,为什么我的 for 循环返回 rest [object]

javascript - NodeJS、Express、Jade POST JSON 到数据库