[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