gpt4 book ai didi

ruby-on-rails - Ruby mod_passenger 进程超时

转载 作者:数据小太阳 更新时间:2023-10-29 08:13:35 24 4
gpt4 key购买 nike

我使用过的一些 Ruby 应用程序在缓慢的调用时挂起很长时间,导致进程在机器上备份,最终需要重新启动。 Passenger 中是否有一种快速简便的方法来限制单个 Apache 调用的执行时间。

在 PHP 中,如果进程超过 php.ini 中设置的最长执行时间,进程会向 Apache 返回一个错误,并且服务器会继续愉快地工作。

最佳答案

我会看一下修复应用程序。在 Web 服务器级别切断请求实际上更像是一种创可贴,而不是解决核心问题——请求失败,无论是哪种方式。如果 Ruby 应用程序依赖于另一个超时的服务,您可以使用 timeout.rb 库像这样修补代码:

require 'timeout'
status = Timeout::timeout(5) {
# Something that should be interrupted if it takes too much time...
}

这将使代码“放弃”并在需要时优雅地关闭请求。

关于ruby-on-rails - Ruby mod_passenger 进程超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7531472/

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