写了一个 nodejs 小程序,部署在 linux 上,跑五六个小时后,内存占用就达到 90%,要怎么排查呢
网上搜索的一圈,说用 heapdump,但这个在 linux 上部署不了,大家有办法吗
网上搜索的一圈,说用 heapdump,但这个在 linux 上部署不了,大家有办法吗

1 ginozhu Jul 30, 2018 heapdump 为啥 linux 上部署不了? heapdump 不行的话,用 inspect,然后远端用 chrome devtool 也可以 dump 出 heap |
2 xiaoxin8888 Jul 30, 2018 检查下代码, 是不是有数组一直往里加没有清的情况. |
3 lzvezr Jul 30, 2018 via Android 其实可以用 alinode |
4 jerry4718 Aug 7, 2018 是不是有事务没提交的 |
5 v2future OP 上一次 headdump 没装上是因为 g++没安装 把内存快照导入 chrome 控制台后发现存在大量未销毁 socket 对象 排查代码,是因为 close socket 的代码写错了,而且没打印异常日志。 现在正常了,程序跑一个礼拜,内存都没有增长。 谢谢大家了 |