在使用delayed_job部署之后,所有内存都被占用

时间:2012-10-19 17:13:24

标签: ruby-on-rails ruby-on-rails-3 vps linode

我有一个带有ubuntu 10.04 64位的linode 512 mb ram,带有rails app + mongodb + nginx + unicorn。

我使用sunspot solr gemdelayed_job gem

当我使用延迟作业进行新部署时:

after "deploy:restart",   "delayed_job:start"

服务器非常慢而且非常糟糕。

如果我在终端写道:

free -m

我明白了:

             total       used       free     shared    buffers     cached
Mem:           487        481          5          0          1         16
-/+ buffers/cache:        463         23
Swap:          255        226         29

我在rails日志中收到Errno::ENOMEM (Cannot allocate memory...等错误。

我的问题是我是否需要升级我的linode或更改为专用服务器以使用delayed_job gem

我一直在寻找http://www.hetzner.de/en/专用服务器。

如果我需要升级我的linode,我需要多少内存来正确运行delayed_job gem?

我当地的ubuntu机器上有4GB内存的延迟工作正常。

非常感谢

1 个答案:

答案 0 :(得分:0)

是的,你需要增加RAM。 Unicorn和延迟作业将导致至少2个正在运行的Rails进程,以及3个部署期间。

你的Rails实例大概每个200 MB。我认为没有后台进程的Rails部署可以使用512 MB,但是我建议使用1024。