node-postgres:设置最大连接池大小

Jak*_*ake 9 postgresql connection-pooling node.js

在设置最大连接池大小时,我找不到node-postgres驱动器的任何文档,或者如果它不可配置,甚至找不到它的内容.有谁知道如何设置最大连接数,或默认情况下它是什么?

Kru*_*rut 12

默认值在node-postgres/lib/defaults中定义https://github.com/brianc/node-postgres/blob/master/lib/defaults.js

poolSize默认设置为10,0将禁用任何池.

var pg = require('pg');
pg.defaults.poolSize = 20;
Run Code Online (Sandbox Code Playgroud)

请注意,池仅在使用connect方法时使用,而不是在直接启动Client实例时使用.


小智 -9

node.js 是单线程的,为什么每个进程想要有超过 1 个到数据库的连接?即使您要集群 Node.js 进程,每个进程最多也应该有 1 个连接。否则你做错了什么。

  • Node.js 的战斗口号是非阻塞 IO,拥有单个连接基本上会使其成为该资源的阻塞调用!简单来说,需要 1 分钟的查询每分钟只能处理 1 个查询,因此 10 个连接的连接池将允许每分钟 10 个查询 (6认同)