RE: Multihilo

From: Edwin Quijada <listas_quijada(at)hotmail(dot)com>
To: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Cc: Juan Martínez <jeugenio(at)umcervantes(dot)cl>, Eugenia Calvo <ecalvo(at)siu(dot)edu(dot)ar>, Lista Postgres ES <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: Multihilo
Date: 2008-02-08 21:37:16
Message-ID: BLU137-W4304F39A798E893B682B10E32F0@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

> Date: Fri, 8 Feb 2008 16:56:35 -0300
> From: alvherre(at)commandprompt(dot)com
> To: listas_quijada(at)hotmail(dot)com
> CC: jeugenio(at)umcervantes(dot)cl; ecalvo(at)siu(dot)edu(dot)ar; pgsql-es-ayuda(at)postgresql(dot)org
> Subject: Re: [pgsql-es-ayuda] Multihilo
>
> Edwin Quijada escribió:
>
>>> From: jeugenio(at)umcervantes(dot)cl
>
>>> Según la web [1] de una persona aparentemente ;-) entendida en postgres,
>>> efectivamente no hay multihthreading aun.
>>>
>>> Lamentablemente en esta web no establece sobre cual versión se refiere.
>
> Todas las versiones existentes son asi.
>
>>> [1]
>>> http://momjian.us/main/writings/pgsql/hw_performance/index.html#SECTION000140000000000000000
>>
>> Bueno, para poder entender un par de cosas:
>> digamos que tengo una aplicacion la cual tiene conectados 200 usuarios
>> pero via web , es decir, todos usan un mismo user/pass para la
>> conexion , si tomo en cuenta de lo que se dice , Postgres abrira
>> multiples procesos por cada conexion o solo uno.
>
> Postgres abre un proceso por cada sesion. Si el servidor web abre una
> sesion por cada usuario, entonces tienes 200 procesos.
>
> Ahora, si eres un DBA competente, lo que haces es poner un "pool de
> conexiones" frente a la BD, tipicamente pgpool o pgbouncer. De esta
> manera, el servidor web se conecta al pool, y el pool se conecta a la
> base de datos. Esto hace que en vez de abrir 200 sesiones, abras unas
> pocas sesiones y le pasas cada una a un usuario web, por turnos; el
> servidor web se las "devuelve" al pool en cuanto las han dejado de
> ocupar. De este modo puedes atender los 200 usuarios con unas 10 o 20
> sesiones (por ejemplo), lo cual te da mejor rendimiento porque te
> ahorras el establecimiento de cada sesion, que es un proceso
> relativamente lento.
>
>> Esto asi porque en ese esquema, si solo abre un proceso, solo
>> aprovecharia un unico procesado de los N que pudiera tener?
>
> Hmm, no necesariamente. Lo hace asi porque es la unica manera de
> hacerlo. Un proceso (== una sesion) no puede atender a mas de un
> usuario a la vez.
>

Gracias ! ALvaro
> --
> Alvaro Herrera http://www.CommandPrompt.com/
> The PostgreSQL Company - Command Prompt, Inc.

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Julio Cesar Sánchez González 2008-02-08 22:01:55 Re: Desinstalar postgresql
Previous Message Fevis Koste 2008-02-08 20:54:12 Re: Determinar última tabla que se haya hecho un insert o update o delete