参数——pg-pool连接池
在deployConfig.js中
-
把下列内容放到
module.exports = { }当中db:{ database: 'xxx', user: 'yyyy', password: 'zzzzz', host: 'xxx.xx.x.xxx', max: 35, min: 5, idleTimeoutMillis: 10000, connectionTimeoutMillis: 5000, lock_timeout: 10000, idle_in_transaction_session_timeout: 10000 } -
最后六行参数解释
-
max 和 min
- 能从“总连接池”分配到的连接数范围
- 最大不能超过 max 个
- 最小要保持 min 个
- 能从“总连接池”分配到的连接数范围
-
idleTimeoutMillis
- 某个连接若空闲超过此时间(ms),就会被归还到“总连接池”
-
connectionTimeoutMillis
- pg-pool库 尝试连接 数据库 的最大等待时间(ms)
- 如果超过此时间还没连接上,就会给查询者返回
connection timeout - 增大此时间,能防止刚启动时还没连上就要查询,导致查询失败,进而初始化失败
-
lock_timeout
- 如果语句试图在获取锁时,等待超过此时间(ms),则该语句被终止
-
idle_in_transaction_session_timeout
- 通过
let client = DB.pool.connect();拿到一个用于事务的专属连接后 - 如果空闲时间超过这个值(ms),就会被强制归还
- 增大此时间,能防止某个事务长时间占着连接又不用
- 通过
-