数据库配置文件database.yml中最常用的选项如下:
adapter
encoding
database
pool
username
password
socket
host
port
timeout
我知道大部分的用法,但不了解pool的作用。 因此,我想知道在database.yml中pool选项的用途是什么,或者是否有其他参数需要设置,适用于高流量的应用程序。
数据库配置文件database.yml中最常用的选项如下:
adapter
encoding
database
pool
username
password
socket
host
port
timeout
我知道大部分的用法,但不了解pool的作用。 因此,我想知道在database.yml中pool选项的用途是什么,或者是否有其他参数需要设置,适用于高流量的应用程序。
它设置了每个 Ruby 进程可能的连接数量。因此,如果您正在对 Rails 应用进行线程化处理,或者您过度使用事务,则这里的限制取决于您的设置。考虑以下情况:
因此,在任何给定时间内,每个进程最多可以打开 20 个连接(50 * 20 == 1000)。因此,您需要将 pool
值设置为 20 或更低。
pool
属性指定可以在给定时间内打开的最大连接数。