meteor正在碰撞最小的DigitalOcean Droplet(内存不足:杀死过程…)

我在基本(512GB)DigitalOcean液滴上运行简单的Meteor应用程序。 偶尔meteor偶然崩溃与这个错误消息:

在这里输入图像描述

Out of memory: Kill process 9682 (node) ... ... => Exited from signal: SIGKILL FATAL ERROR: JS Allocation failed - process out of memory 

哪里不对? 这是非常简单的应用程序,它不能花费所有的内存。

如果你愿意,你可以保持最小的水滴。 我的$ 5 /月DigitalOcean Droplet,512MB RAM和20GB SSD也有同样的问题。 我没有升级,而是实施了交换 ,如下所示:

使用dd命令创build并启用交换文件:

 sudo dd if=/dev/zero of=/swapfile bs=1024 count=256k 

“= / swapfile”指定文件的名称。 在这种情况下,名称是交换文件。

接下来通过创build一个linux交换区域来准备交换文件:

 sudo mkswap /swapfile 

结果显示:

 Setting up swapspace version 1, size = 262140 KiB no label, UUID=103c4545-5fc5-47f3-a8b3-dfbdb64fd7eb 

通过激活交换文件完成:

 sudo swapon /swapfile 

当您查看交换摘要时,您将能够看到新的交换文件。

 swapon -s Filename Type Size Used Priority /swapfile file 262140 0 -1 

该文件将保留在虚拟专用服务器上,直到机器重新启动。 您可以通过将交换添加到fstab文件来确保交换是永久的。

打开文件:

 sudo nano /etc/fstab 

粘贴在以下行中:

  /swapfile none swap sw 0 0 

文件中的Swappiness应该设置为10.跳过这一步可能会导致性能下降,而将其设置为10将导致swap作为紧急缓冲区,从而防止内存不足的崩溃。

你可以用下面的命令来做到这一点:

 echo 10 | sudo tee /proc/sys/vm/swappiness echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf To prevent the file from being world-readable, you should set up the correct permissions on the swap file: sudo chown root:root /swapfile sudo chmod 0600 /swapfile 

我能够通过使用比最初指定(超过256mb)到1GB更多的交换空间来解决此问题。

要将Ubuntu上的交换空间大小调整为1Gb,请执行以下操作:

 sudo swapoff -a sudo dd if=/dev/zero of=/swapfile bs=1M count=1024 sudo mkswap /swapfile sudo swapon /swapfile 

我发现了这个问题。

https://github.com/joyent/node/wiki/FAQ#what-is-the-memory-limit-on-a-node-process

我在64位系统上只用了512mb的RAM。 但是这不build议节点进程。

我相信这可能与meteor可能存在的问题有关。 看看在这个github问题中显示CPU使用情况的评论。 https://github.com/meteor/meteor/issues/2536#issuecomment-55295490

为了回应马雷克的回答,

我正在Digital Ocean上运行一个Meanjs应用程序,虽然本地一切工作正常,当我单独testing我的实时应用程序时,只要第二个用户login就会耗尽内存并崩溃。

而不是尝试整个交换的东西,我刚刚从5美元/月512MB内存升级到10美元/月1G,到目前为止,我已经得到了多达6台机器与多个Chrome浏览器和Firefox浏览器同时访问它就好了。

您可以尝试设置DigitalOcean液滴的交换文件。

做了一个很好的指导如何做到这一点。 你可以在这里find它:

https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04