[IRC-DEV] Mecanismos de persistencia en la BDD
Jesus Cea Avion
jcea at argo.es
Tue Feb 4 15:43:02 CET 2003
Continuando en la línea de solucionar los tres problemas que comenté
hace meses que condicionaban un uso masivo del registro de canales por
problemas inherentes a la BDD actual, os comento que he empezado con uno
de ellos.
* Problema: Cuando se arranca el IRCD, éste debe releer la BDD y
construir sus estructuras en memoria. Esta operación es O(n), donde
'n' es el número de registros y borrados en la BDD. Con el registro
de canales, 'n' va a crecer mucho, y con ello, el tiempo de arranque
del IRCD.
* Solución: Definir un sistema de "persistencia" en el que el IRCD pueda
conservar las estructuras de memoria entre ejecuciones del servidor.
De esta forma, cuando el servidor arranca, le "aparecen" de golpe
las estructuras en memoria, sin tener que recrearlas. Debe
verificarse que las estructuras no se corrompen, no se modifican
de forma maliciosa o son incompatibles con las estructuras actuales,
etc.
Estoy trabajando ahora en este tema. Hay algún parche ya en el CVS, muy
preliminar. El asunto me llevará un par de semanas.
Por supuesto, el código será público y los detalles de funcionamiento
estarán documentados 100% en mi web, para beneficio de la comunidad.
--
Jesus Cea Avion _/_/ _/_/_/ _/_/_/
jcea at argo.es http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/
_/_/ _/_/ _/_/_/_/_/
PGP Key Available at KeyServ _/_/ _/_/ _/_/ _/_/ _/_/
"Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/
"My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibniz
More information about the IRC-Dev
mailing list