节点应用程序在一定时间后无响应
Node app unresponsive after certain amount of time
我想弄清楚为什么我的 nodejs 应用程序在 11 小时 20 分钟后无响应。它每次都会发生,无论我 运行 它是在 amazon-linux
还是 Red Hat
.
我的堆栈:
- nodejs(6.9.4 版)
- mongodb (3.2)
- pm2 进程管理器
- AWS EC2 实例 T2 介质
每次我运行打开应用程序时,它都会变得无响应并向浏览器返回错误:
net::ERR_CONNECTION_RESET
Pm2 没有重启应用,所以我怀疑和nodejs
没有关系,我也分析了应用,它没有内存泄漏。数据库日志看起来也不错。
唯一不变的因素是应用程序在 运行 秒后崩溃 11 小时 20 分钟。
我正在处理来自 nodejs
应用程序的所有可能错误,但日志文件中没有出现任何错误,所以我怀疑它一定是其他原因。
我还检查了 var/log/messages
和 /home/centos/messages
,但也没有与应用程序崩溃相关的内容。
/var/log/mongodb/mongo.log
也没有显示任何具体内容。
解决问题的最佳方法是什么?
任何线索我该如何调试它或者可能是什么原因?
谢谢
从评论中复制,因为它显然导致了解决方案:
我猜你泄漏的不是内存,可能是文件描述符。尝试使用 netstat 或 lsof 查看打开的连接或文件是否比您预期的多很多。
我想弄清楚为什么我的 nodejs 应用程序在 11 小时 20 分钟后无响应。它每次都会发生,无论我 运行 它是在 amazon-linux
还是 Red Hat
.
我的堆栈:
- nodejs(6.9.4 版)
- mongodb (3.2)
- pm2 进程管理器
- AWS EC2 实例 T2 介质
每次我运行打开应用程序时,它都会变得无响应并向浏览器返回错误:
net::ERR_CONNECTION_RESET
Pm2 没有重启应用,所以我怀疑和nodejs
没有关系,我也分析了应用,它没有内存泄漏。数据库日志看起来也不错。
唯一不变的因素是应用程序在 运行 秒后崩溃 11 小时 20 分钟。
我正在处理来自 nodejs
应用程序的所有可能错误,但日志文件中没有出现任何错误,所以我怀疑它一定是其他原因。
我还检查了 var/log/messages
和 /home/centos/messages
,但也没有与应用程序崩溃相关的内容。
/var/log/mongodb/mongo.log
也没有显示任何具体内容。
解决问题的最佳方法是什么?
任何线索我该如何调试它或者可能是什么原因?
谢谢
从评论中复制,因为它显然导致了解决方案:
我猜你泄漏的不是内存,可能是文件描述符。尝试使用 netstat 或 lsof 查看打开的连接或文件是否比您预期的多很多。