我在 Ubuntu 12.04 VPS、Nginx + Unicorn 上托管我的 Rails 应用程序,部署后一切正常,但几个小时后,当我 ssh 到 VPS 时,我收到此消息
-bash: fork: Cannot allocate memory
-bash: wait_for: No record of process 4201
-bash: wait_for: No record of process 4201
如果我运行任何命令,它只会返回
-bash: fork: Cannot allocate memory.
看来你的内存不足了。许多 VPS 服务器都设置为没有交换区,因此当内存不足时,它会以看似随机的方式终止运行。
解决此问题的最简单方法是为您的 VPS 配置更多内存,这可能会花费更多资金。下一个最好的方法(除了运行更少的东西和优化所有运行的内存)是添加交换分区或交换文件。
对于 1GB 交换文件(作为 root):
dd if=/dev/zero of=/swapfile bs=1M count=1024
mkswap /swapfile
swapon /swapfile
请务必将其也添加到 /etc/fstab 中,如下所示:
/swapfile none swap defaults 0 0
这将使它在重新启动后恢复。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)