AWS EC2 上的节点服务器突然超时所有请求但继续运行重新启动服务器暂时解决了该问题,但问题仍在继续

问题描述

所以我有一个在 AWS EC2 实例上运行的节点 (v8.9.4) 服务器,使用 forever 包启动它。该服务器多年来一直运行没有任何问题,但现在它已经发展壮大并且越来越多的人使用它,它在工作几个小时后突然开始在看似随机的时间超时所有请求。

我发现在服务器上运行 forever restart 可以让所有请求再次工作,所以我有一个临时的 cronjob 每小时重新启动它,但这不是一个好的设计,我宁愿让服务器运行没有任何问题。

我浏览了我的服务器日志,发现这可能很重要:

error: Forever detected script was killed by signal: SIGKILL
error: Script restart attempt #131
Warning: connect.session() MemoryStore is not designed for a production environment,as it will leak memory,and will not scale past a single process.

另一件可能很重要的事情是,发生此问题时服务器会保持运行,因此通过 UptimeRobot(或任何服务器状态检查器)对服务器状态的任何检查都会返回成功。

考虑到服务器可以正常运行几个小时,并且在重新启动后再次启动也没有问题,我认为这不是代码问题,而是我不知道的其他问题。我目前的假设是,如果服务器 cpu 耗尽,请求将开始超时,但我想在对这个问题进行最终调用之前探索更多选项。如果有人对这个问题有任何见解,我将不胜感激! :)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)