Ruby on rails RubyonRails VPS内存量

Ruby on rails RubyonRails VPS内存量,ruby-on-rails,delayed-job,vps,ram,Ruby On Rails,Delayed Job,Vps,Ram,目前我有一个最简单的VPS:1核,256MB内存,Ubuntu12.04LTS。我的应用程序似乎运行得很好(我使用的是unicorn和nginx),但当我为我的延迟的\u作业运行rake jobs:work命令时,unicorn进程正在被终止 我想知道这是否与RAM数量有关 当unicorn进程启动并运行时,free-m命令显示大约230MB的RAM被占用。 我想知道,我总共需要多少内存?512 ? 1024 ? 我应该和哪一个一起去 我很高兴收到任何答复 谢谢你你可以从 ulimit -S

目前我有一个最简单的VPS:1核,256MB内存,Ubuntu12.04LTS。我的应用程序似乎运行得很好(我使用的是unicorn和nginx),但当我为我的
延迟的\u作业运行
rake jobs:work
命令时,unicorn进程正在被终止

我想知道这是否与RAM数量有关

当unicorn进程启动并运行时,
free-m
命令显示大约230MB的RAM被占用。 我想知道,我总共需要多少内存?512 ? 1024 ? 我应该和哪一个一起去

我很高兴收到任何答复

谢谢你

你可以从

ulimit -S -a 

要了解您环境的限制,DJ worker将运行Rails应用程序的另一个实例,因此您需要确保至少有足够的RAM用于该另一个实例,并为正在运行的其他进程预留空间

  • 检查
    ps aux
    ,了解Rails应用程序的内存使用情况
  • 运行
    top
    ,查看有多少物理内存可用(当Rails应用程序运行时)
我的猜测是,你将不得不把你的内存提高到512MB。当然,你不希望你的内存被用来交换


当然,除此之外,您还需要确保您的应用程序和数据库得到了足够的优化,从而不会出现令人难以置信的内存使用高峰。

我对我的VPS提供商非常满意。他们提供的下一个软件包是1GB的RAM。对于应用程序本身+DJ来说,这足够了吗?非常感谢你的回答。我还想知道该站点的每个访问者分配了多少RAM?如何估计?RAM使用率通常根据您运行的应用程序实例的数量来估计。如果运行一个Rails实例来处理web请求,那么一次可以处理一个web请求。如果要同时处理多个web请求,请增加实例数。运行
ps aux
,查看Rails应用程序使用了多少内存。然后将其乘以(延迟的\u作业的web实例数+1)。但是请检查
top
,因为您的一些内存也会用到您的操作系统和其他正在运行的服务,看看您实际需要多少。好吧,这有点太复杂了:)我想,我会使用1G或RAM,这对于我的站点来说应该足够了。我很好奇,一次会有太多的访问者——这会杀死我的HTTP服务器(unicorn)进程吗?或者任何其他进程,如mysql服务器?如果您有预算,1GB可能是安全的。:-)Unicorn不会有问题,因为如果达到最大积压请求数(Rails web实例未处理),它将直接拒绝web请求。MySQL服务器的负载也取决于您拥有的web实例的数量。很明显,我在这里没有其他选择:)256mb或1GB(考虑到我不想更改我的提供程序)。非常感谢您的回答:)核心文件大小(块,-c)无限,数据段大小(KB,-d)无限,调度优先级(-e)0,文件大小(块,-f)无限,挂起信号(-i)772251,最大锁定内存(KB,-l)64,最大内存大小(KB,-m)无限,打开文件(-n)1024,管道大小(512字节,-p)8,POSIX消息队列(字节,-q)819200,实时优先级(-r)0,堆栈大小(kbytes,-s)10240,cpu时间(秒,-t)无限,最大用户进程(-u)772251,虚拟内存(kbytes,-v)无限,文件锁(-x)无限,这就是我收到的!不知道如何正确地分析它