[IRC-DEV] Empieza el BrainStorming sobre "chan2"

Óscar García red_star23 at yahoo.es
Sat Dec 21 02:08:03 CET 2002


 --- Jesus Cea Avion <jcea at argo.es> escribió:
> b) Los registros se leen en memoria cuando se arranca el servidor.
>    El problema no es la memoria que se usa, que para eso está el SWAP
>    };-), sino lo que tardan los servidores en estar disponibles. Estoy
>    diseñando dos cosas: por un lado un servidor de base de datos "real"
>    y por otro un sistema de memoria "persistente", que recupere el
>    estado de la memoria de registros cuando se reinicia el proceso.

El problema mayor (empeorado si llega a usarse memoria de intercambio) es que si se rastreara
completamente la tabla de la base de datos sin el uso de índices o algún algoritmo de "búsqueda
rápida" estamos obligandos a hacer paginación al archivo de intercambio (léase partición swap) de
zonas de memoria que serán cargadas a la RAM en la siguiente búsqueda.

En el caso de que toda la base de datos pudiera cargarse en RAM sin hacer uso de paginación a
disco nos encontramos con más de lo mismo con el uso de la CPU. Imagináos búsquedas en la base de
datos por cada entrada en algún canal de la base de datos.

Por supuesto, debemos comprobar antes de buscar en la base de datos de chan si existe el registro
de dicho nick (menos costoso y nos ahorra una búsqueda inútil, eso como decía lo daba por
supuesto).

¿Cómo podríamos optimizar las búsquedas sin hacer uso de índices? También podríamos mantener
continuamente la base de datos ordenada (ya no harían falta las compactaciones nunca más de paso)
permitiendo así la búsqueda de canales en la base de datos y sus modos asociados más rápidamente.

¿Cómo lo veis? en este último caso habría que modificar algo el código de la base de datos
distribuida.

FELIZ NAVIDAD A TODOS Y A TODAS :)

=====
Remember: Un*x _IS_ user friendly... It's just selective about who it's friends are
http://redstar.linaresdigital.com/

___________________________________________________
Yahoo! Sorteos
Consulta si tu número ha sido premiado en
Yahoo! Sorteos http://loteria.yahoo.es



More information about the IRC-Dev mailing list