我怀疑我的 Node 应用程序中存在文件描述符泄漏,但我不确定如何确认这一点。有没有简单的方法来检测 Node 中的文件描述符泄漏?
最佳答案
跟踪打开的文件
在 Linux 上,您可以使用 lsof
命令来列出[一个进程]打开的文件。
获取您要跟踪的事物的 PID:
ps aux | grep node
假设它的 PID 为 1111 和 1234,列出打开的文件:
lsof -p 1111,1234
您可以保存该列表并比较您希望它们在您的应用中发布的时间。
让复现更容易
如果需要一段时间来确认这一点(因为需要一段时间才能用完描述符),您可以尝试使用 ulimit
ulimit -n 500 #or whatever number makes sense for you
#now start your node app in this terminal
关于node.js - 如何检测 Node 中的文件描述符泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18622316/