目前正在使用sidekiq运行backgroud作业,同时运行其给出“ActiveRecord :: ConnectionTimeoutError”。
This is my current database.yml file,
production:
adapter: postgresql
encoding: unicode
database: app_production
username: password
password:
host: app.domain.com
pool: 25
这是我的sidekiq.yml文件,
production:
concurrency: 25
timeout: 300
运行其给定连接超时错误
这个错误是在背景中进行的,
could not obtain a database connection within 5 seconds (waited 5.82230675 seconds). The max pool size is currently 25; consider increasing it.
答案 0 :(得分:8)
您的postgres数据库允许的最大连接数为25.但是您已将sidekiq的并发设置为25.因此,如果您运行sidekiq的所有并发线程,则您的应用服务器将无法使用任何数据库连接
减少sidekiq并发或增加池大小(我建议增加池大小)。
默认情况下,Postgres允许100个并发连接