ActiveRecord和Puma:无法从池中获取连接

时间:2017-05-09 06:45:00

标签: ruby activerecord connection-pooling puma

我们正在从Passenger转移到Puma,一切都在某些应用程序中运行但是对于另一个应用程序我们收到此错误:

ActiveRecord::ConnectionTimeoutError - could not obtain a connection from the pool within 5.000 seconds (waited 5.000 seconds); all pooled connections were in use:
    /opt/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:202:in `block in wait_poll'

这是在第5次请求之后发生的。我们将其与默认数据库连接pool大小连接为5。

我们可以更新此号码,但是:

  1. 我们应该在游泳池大小中放入哪个号码?
  2. 为什么这不是Rails应用程序中的问题? (这只发生在我们的Sinatra-ActiveRecord应用程序中?

1 个答案:

答案 0 :(得分:0)

puma gem添加到我的Gemfile可以解决问题:

group :production do
  gem "puma"
end
相关问题