gpt4 book ai didi

ruby-on-rails - 在 Rails 进程结束后终止它

转载 作者:太空宇宙 更新时间:2023-11-03 18:29:54 24 4
gpt4 key购买 nike

我正在使用 nginx 运行一个 Rails 应用程序(确切地说是 Tracks)。启动的 Rails 进程似乎会无限期地持续下去?它应该停止吗?

我的共享主机上的 RAM 分配很低,我希望能够在 10 分钟后终止 Rails 进程。有没有办法在 nginx 或 Passenger 中做到这一点?

与此同时,我每 10 分钟用 cron 运行这个 bash 脚本:

PID=$(ps ax|grep [R]ails.*lytracks | cut -f2 -d" " | head -n1)

if [ $PID ]; then
kill -SIGUSR1 $PID
else
echo Not running
fi

最佳答案

你可以这样做,但你不应该这样做。

Rails(在生产模式下)通常不会泄漏内存,因此重新启动进程应该没有影响。
具有合理负载的健康 Rails 应用程序应该稳定在大约 30-70MB RAM 并永远保持在那里。

每 10 分钟重新启动一次意味着每隔 10 分钟您的一些用户就会看到一个需要 20 秒加载的页面。或者根本无法加载。
您正在尝试像使用 CGI PHP 脚本一样使用 Rails。这不是为了那样做。

如果您有内存泄漏,您应该尝试找出导致它们的原因,然后修复它。

关于ruby-on-rails - 在 Rails 进程结束后终止它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5769418/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com