我想知道Rails database.yml中的以下设置:
默认情况下,ActiveRecord连接池的数据库连接数设置为5:
development:
...
pool: 5
Run Code Online (Sandbox Code Playgroud)
但默认情况下,Rails 3是单线程的.为什么默认需要5个连接?
据我所知,单线程Rails应用程序不能同时触发多个数据库操作,为什么还需要保持更多连接打开?
我认为2个连接是有意义的,所以你总是有一个活动连接,即使另一个超时,但是持有五个连接对我来说似乎有点奇怪.
我错过了什么吗?
更新如果其他人好奇,我发现了一个解释它的提交:https: //github.com/rails/rails/commit/b700153507b7d539a57a6e3bcf03c84776795051
实际上这些默认设置没有任何意义,它是固定的,但由于测试套件而暂时恢复(一年前).