[Pgsql-ayuda] procesos de postgresql

Alvaro Herrera alvherre@dcc.uchile.cl
Sat, 5 Apr 2003 01:04:31 -0400


On Sat, Apr 05, 2003 at 03:23:29AM +0200, yordy wrote:

> un site apache + php + postgresql, cada ves que me
> conecto al sitio se me crea un proceso y cuando me
> desconecto (aun cuando cierro la pagina) el proceso se
> queda corriendo de manera que se van acumulando los
> procesos y llegado el momento el postgresql no me deja
> hacer conexiones, sera por utilizar conexiones
> persistentes??

Si no cierras la conexion, _obviamente_ el proceso va a quedar ahí si
usas conexiones persistentes; precisamente esa es la idea de las
conexiones persistentes.

En esas situaciones, debes configurar Postgres para que acepte al menos
tantos procesos (max_backends en postgresql.conf) como el máximo de
hijos de Apache (MaxChilds creo que se llama la directiva).  La
alternativa es no usar conexiones persistentes, pero siempre existe la
posibilidad de que muchos usuarios concurrentes accedan al sitio
simultáneamente.

Una alternativa aún más interesante, que obviamente sólo podía
ocurrírseme un viernes a la una de la mañana, es implementar un modulito
de PHP para hacer conexiones persistentes tú mismo, M:N; es decir, M
hijos de apache con N conexiones a la base de datos.  No lo intentes a
menos que tengas mucho tiempo libre!!

-- 
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"Es filosofo el que disfruta con los enigmas" (G. Coli)