我有一个这样的课程:
class Router :: Mongrel::HttpHandler
def process(req, res)
status, header, body = [200, {"Content-type"=>"text/html"}, Model.all.to_xml]
res.start(status) do |head, out|
header.each_pair { |key, value| head[key] = value }
out.write body
end
end
end
这是一台服务器,我在另一边使用ActiveResource前端。
每第3个请求非常慢(大约5秒,第1和第2个是好的,大约0.01秒)。 Model.all.to_xml中的问题(它是ActiveRecord - > SQLite)。
为什么它太慢了?只有当我在Mongrel :: HttpHandler中使用它时才会发生这种情况。 此
100.times do
a = Time.now
Car.all.to_xml
puts "#{Time.now - a}"
sleep(1)
end
总是很好用。
答案 0 :(得分:0)
的ActiveRecord :: Base.clear_active_connections!解决了这个问题。