我在512MB AWS LightSail实例(一小部分CPU)中有一个带有Nginx前端的Node / Express应用。
99%的时间运行良好。但是,当我执行apt-get update
时,有时Web应用程序将变得无响应,并且在此期间的Web请求最终将看到Nginx 502错误的网关页面。在大多数情况下,发生这种情况时,apt-get update
运行完成之前,Node应用程序将重新启动,而不会出现错误消息。
运行apt-get update
时,我发现kwapd0
经常出现在top
的顶部。
什么可能导致此行为?
答案 0 :(得分:0)
内存不足会导致任何程序终止,因为“内存不足”管理器将终止进程以保持系统运行。在具有512MB RAM的VM上,节点无疑是最大的过程,并且将被杀死,以提供更多的可用内存。该错误消息将出现在系统日志中,因为这是系统终止程序。
使用更大的VM或添加交换文件(至少2gb,但可能更大,具体取决于您的节点应用程序),问题可能会消失。
如果节点应用程序无法足够迅速地响应,则CPU不足会导致Nginx在连接到该节点应用程序时超时。但是,如果发生这种情况,我预计会出现504网关超时错误。