内存不足或CPU时间不足会导致Node应用重新启动吗?

时间:2020-09-18 12:51:23

标签: node.js express

我在512MB AWS LightSail实例(一小部分CPU)中有一个带有Nginx前端的Node / Express应用。

99%的时间运行良好。但是,当我执行apt-get update时,有时Web应用程序将变得无响应,并且在此期间的Web请求最终将看到Nginx 502错误的网关页面。在大多数情况下,发生这种情况时,apt-get update运行完成之前,Node应用程序将重新启动,而不会出现错误消息。

运行apt-get update时,我发现kwapd0经常出现在top的顶部。

什么可能导致此行为?

1 个答案:

答案 0 :(得分:0)

内存不足会导致任何程序终止,因为“内存不足”管理器将终止进程以保持系统运行。在具有512MB RAM的VM上,节点无疑是最大的过程,并且将被杀死,以提供更多的可用内存。该错误消息将出现在系统日志中,因为这是系统终止程序。

使用更大的VM或添加交换文件(至少2gb,但可能更大,具体取决于您的节点应用程序),问题可能会消失。

如果节点应用程序无法足够迅速地响应,则CPU不足会导致Nginx在连接到该节点应用程序时超时。但是,如果发生这种情况,我预计会出现504网关超时错误。