Re: Muchos usuarios conectados

From: Gunnar Wolf <gwolf(at)gwolf(dot)org>
To: Edwin Quijada <listas_quijada(at)hotmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Muchos usuarios conectados
Date: 2007-05-06 00:04:42
Message-ID: 20070506000442.GB4295@gwolf.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Edwin Quijada dijo [Thu, May 03, 2007 at 02:31:32PM +0000]:
> Hola!
> Tengo una duda sobre una app que estoy desarrollando. Mi app la usaran
> alrededor de 400 usuarios via web como en un desktop ,y una alta rotacion,
> me preguntaba cual seria la mejor manera de usar esto si creando un usuario
> por cada perosna en la BD o crear un usuario de conectividad y manejar todo
> de esa forma. Siempre lo he usado creando usuarios reales dentro de la BD
> pero no se si esto puede ser perjudicial o no o si perderia ciertas
> ventajas.
>
> Una de las cosas principales es que no se si pueda "tumbar" algun usuario
> en especifico usando el concepto de un unico usuario.

Esto depende por completo del modelo que hayas seguido para el
desarrollo de tu aplicación - Postgres te da la capacidad para
manejarlo como te guste. En mi caso, he preferido manejar usuarios por
tipo de tarea a realizar - En la mayor parte de mis sistemas tengo
únicamente un usuario; en unos pocos sistemas tengo dos usuarios, uno
para las tareas de un uso normal y uno para la administración. Claro,
podrías dar acceso mucho más granular si lo manejaras realmente por
usuario separado... Pero depende de qué tanto quieras meterte. ¡Ah! Un
par de puntos a favor de hacerlo como te comento: Muchas aplicaciones
que corren bajo servidores Web (especialmente Apache, que es con el
que más he trabajado) manejan conexiones persistentes - Abren una sola
conexión (o un conjunto de n conexiones) a la BD al inicializarse, y
por medio de esta conexión sirven a todas las instancias que son
invocadas, ahorrando el tiempo que toma establecer nuevas
conexiones. Entiendo que, para funcionar correctamente este esquema,
las conexiones deben ser idénticas - A la misma BD y con el mismo
usuario. Si tienes 400 usuarios concurrentes, este último punto puede
serte importante.

Respecto a cómo botar a uno de esos usuarios: Claro, si manejas los
usuarios en otra capa, matar las sesiones también se va a otra
capa. En este caso en específico, en vez de matar a una conexión entre
un usuario y la BD, lo que harías es eliminar -por decir algo- la
entrada en tu tabla de sesiones que identifique al usuario al que
quieres desconectar.

Saludos,

--
Gunnar Wolf - gwolf(at)gwolf(dot)org - (+52-55)5623-0154 / 1451-2244
PGP key 1024D/8BB527AF 2001-10-23
Fingerprint: 0C79 D2D1 2C4E 9CE4 5973 F800 D80E F35A 8BB5 27AF

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Victor Lopez 2007-05-06 00:08:15 Re: funciones y ROLLBACK
Previous Message Jaime Casanova 2007-05-05 18:33:08 Re: funciones y ROLLBACK