2012-04-18 16 views
8

No puedo encontrar ninguna documentación para el nodo-postgres coche sobre cómo establecer el tamaño máximo de la agrupación de conexiones, o incluso saber lo que es si no es configurable. ¿Alguien sabe cómo puedo establecer la cantidad máxima de conexiones, o lo que es por defecto?node-postgres: ajuste de conexión máximo tamaño de la piscina

Respuesta

-3

node.js tiene un solo hilo por qué quiere tener más de 1 conexión a db por proceso? Incluso cuando agrupe procesos node.js, debe tener 1 conexión por proceso máximo. De lo contrario, estás haciendo algo mal.

+3

node.js battle cry es IO no bloqueante, tener una sola conexión básicamente lo convierte en una llamada de bloqueo para ese recurso. Simplemente, una consulta que demora 1 minuto solo puede procesar 1 consulta por minuto, por lo que un grupo de conexiones de 10 permitiría 10 consultas por minuto – Krut

+0

@Jakub: cada conexión tiene una cola de consultas, así que sí, si solo tuvieras una conexión, la n-ésima consulta se enviará solo cuando se complete la consulta n-1'th. Si tiene múltiples conexiones, tiene múltiples colas y ninguna de ellas necesariamente se bloquea entre sí. La razón por la que unimos conexiones es porque son relativamente caras de crear y destruir. –

11

valores predeterminados se definen en el nodo-postgres/lib/valores predeterminados https://github.com/brianc/node-postgres/blob/master/lib/defaults.js

poolSize se establece en 10 por defecto, 0 desactivará cualquier agrupación.

var pg = require('pg'); 
pg.defaults.poolSize = 20; 

Tenga en cuenta que el grupo solo se usa cuando se utiliza el método de conexión, y no cuando se inicia una instancia de Cliente directamente.

Cuestiones relacionadas