gpt4 book ai didi

ruby-on-rails - Heroku Timeout::timeout 不抛出错误

转载 作者:行者123 更新时间:2023-12-04 20:11:30 25 4
gpt4 key购买 nike

我正在使用 heroku 来托管支持 iOS 应用程序的 ruby​​ on rails 应用程序。我有一个可能会运行很长时间的请求,我需要能够在我的请求被终止之前捕获超时。我正在使用 Timeout::timeout(15) 来抛出一个错误并适本地处理它。这在我的本地工作正常,我可以看到抛出并记录的错误。当我在 heroku 上运行相同的代码时,不会记录任何错误。我在尝试使用机架超时 gem 时遇到了同样的问题。

是否还有其他人在 Heroku 上遇到超时运行问题?我在雪松上。

最佳答案

# app/controllers/index_controller.rb
require 'timeout'
Class IndexController < ApplicationController
def timeout
begin
status = Timeout::timeout(5) {
sleep(6)
render :text => "will never be rendered"
rescue Timeout::Error
render :text => "timeout handled"
end
end
end
end

# config/routes.rb

match '/timeout' => "index#timeout"

这在 heroku 上工作正常: http://young-gorge-7585.herokuapp.com

关于ruby-on-rails - Heroku Timeout::timeout 不抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16818741/

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