Mic*_*jen 19 process upstart limit memory-consumption
我最近非常喜欢Upstart.以前我一直在使用God,Monit和Bluepill,但我并不喜欢这些解决方案,所以我试试Upstart.
我一直在使用Foreman gem为我的进程生成一些基本的Upstart配置文件/etc/init.但是,这些生成的文件只处理崩溃进程的重新生成.我想知道是否有可能告诉Upstart重新启动一个消耗> 150mb内存的过程,就像Monit,God或Bluepill一样.
我通读了Upstart文档,这看起来就像我正在寻找的东西.虽然我不知道如何配置这样的东西.
我基本上想要的很简单.web如果内存使用率为> 150mbram,我想重新启动我的进程.这些是我的文件:
|-- myapp-web-1.conf
|-- myapp-web-2.conf
|-- myapp-web-3.conf
|-- myapp-web.conf
|-- myapp.conf
Run Code Online (Sandbox Code Playgroud)
他们的内容是:
myapp.conf
pre-start script
bash << "EOF"
mkdir -p /var/log/myapp
chown -R deployer /var/log/myapp
EOF
end script
Run Code Online (Sandbox Code Playgroud)
MYAPP-web.conf
start on starting myapp
stop on stopping myapp
Run Code Online (Sandbox Code Playgroud)
myapp-web-1.conf/myapp-web-2.conf/myapp-web-3.conf
start on starting myapp-web
stop on stopping myapp-web
respawn
exec su - deployer -c 'cd /var/applications/releases/20110607140607; cd myapp && bundle exec unicorn -p $PORT >> /var/log/myapp/web-1.log 2>&1'
Run Code Online (Sandbox Code Playgroud)
任何帮助非常感谢!
小智 10
将其追加到末尾myapp-web-*.conf会导致任何分配调用尝试分配多个150mb内存来返回ENOMEM:
limit rss 157286400 157286400
Run Code Online (Sandbox Code Playgroud)
此过程可能会崩溃,或者可能不会崩溃.这取决于这个过程!
| 归档时间: |
|
| 查看次数: |
4310 次 |
| 最近记录: |