这是我的应用程序的大纲:
require 'sinatra'
require 'active_record'
ActiveRecord::Base.establish_connection(
:adapter => "mysql", host => $DB_HOSTNAME,
:database => $DB_NAME,:username => $DB_USERNAME,:password => $DB_PASSWORD)
class Sometable < ActiveRecord::Base
end
get '/' do
#stuff with Sometable
end
# a lot of route handlers..
等等
我只调用了一次建立连接 - 在应用程序初始化期间。我遇到了 MySQL 的 8 小时空闲连接限制(MySQL 服务器已经消失),我想知道最好的方法。
我浏览了 ActiveRecord 源,发现它汇集了数据库服务器连接。那么,理想情况下,我应该在每个 Web 请求中创建一个新连接还是增加超时设置?
谢谢你的时间!