Re: congestion de postgres ???

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Luis Guevara <luis(dot)a(dot)guevara(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: congestion de postgres ???
Date: 2005-09-02 15:02:32
Message-ID: 20050902150232.GE18258@surnet.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Fri, Sep 02, 2005 at 08:52:17AM -0500, Luis Guevara wrote:

Hola,

> Mi problema era que a medida que pasaban los dias notaba que se habia
> hecho bastante lento. En un primer momento, pensé que era por la data
> que estaba aumentando y habia que hacer VACUUM ademas de ajustar las
> consultas, pero ahora me doy cuenta que no es eso, sino más bien al
> parecer hay mucha CONGESTION

Bueno, y? Haces VACUUM y ANALYZE con la suficiente frecuencia?

Usa contrib/pgstattuple para determinar que tanto espacio perdido hay en
las tablas.

> No hago conexiones persistentes, pero si tengo un modulo de
> comunicacion entre usuarios activos en el sistema, este modulo lo que
> hace es: Desde que ingresa el usuario al sistema, cada 4 segundos
> efectúa una consulta a una tabla de mensajes para verificar si alguien
> le ha enviado un mensaje al usuario activo, esta tabla tiene en este
> momento 800 registros y cada tres dias se eliminan todos.

La consulta esa de los mensajes, hace un seqscan o usa un indice? Esa
tabla recibe todo el VACUUM necesario?

> Entonces si hay 100 usuarios activos y todos a la vez, cada 4 segundos
> lanzando consultas en Postgres, además de efectuar sus operaciones
> propias correspondientes del sistema, definitavemente me parece que es
> congestión.
>
> ¿ alguna idea sobre esto ? ¿ como podria mejorar este esquema ? ¿ como
> puedo controlar esta congestion de tal manera que no me afecte la
> velocidad ?

Si la consulta esta optimizada al maximo, y dices que el sistema
funciona bien con 20 usuarios consultando cada 4 segundos, entonces para
soportar 100 usuarios los que necesitas es tener un sistema de discos 5
veces mas rapido. En tal caso, considera

1. agregarle memoria al sistema
2. comprar una controladora RAID SCSI soportada con baterias
3. comprar discos suficientes para armar un RAID 10 con unos 4 discos
muy rapidos

Otra alternativa que se me ocurre es, con los 100 usuarios, bajar los 4
segundos a 20. Asi deberias tener, en promedio, la misma cantidad de
consultas que 20 usuarios cada 4 segundos.

--
Alvaro Herrera -- Valdivia, Chile Architect, www.EnterpriseDB.com
"El sabio habla porque tiene algo que decir;
el tonto, porque tiene que decir algo" (Platon).

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Douglas Escobar 2005-09-02 15:15:05 RE: problemas con tabla
Previous Message dkuroki 2005-09-02 14:46:18 Re: congestion de postgres ???