【发布时间】:2011-03-31 04:35:55
【问题描述】:
我想将我的数据库设置为在设定的时间内未完成的超时请求,以防止异常请求独占整个应用程序。
我可以在我的 Rails 配置文件中添加什么来设置它吗?
我尝试将我经常在网上看到的timeout: 5000 添加到我的database.yml 中,但这似乎没有任何效果。
我尝试在 environment.rb 中调用 ActiveRecord::Base.connection.execute('set statement_timeout to 5000'),但这会导致 Rails 出错。
我在 Heroku 上运行 Postgres 数据库,我没有直接的数据库访问权限,因此我无法直接使用数据库配置来执行此操作。即使我从 Heroku 控制台远程执行该命令,他们也可以随时重新启动我的应用程序,如果在应用程序启动时没有重新执行此命令,我的更改就会丢失。
【问题讨论】:
标签: ruby-on-rails database postgresql timeout heroku