Hola Ana,
El chat de Moodle es algo demandante de recursos y, según entiendo, no es conveniente usarlo como lo estás haciendo.
Es demasiado para el servidor.
Para "eficientar" su uso debes configurarlo como "demonio" .
En Moodle 2, debes ir a:
Bloque "Ajustes" -> Sección "Administración del sitio" -> Extensiones -> Módulos de actividad -> Chat -> Del lado derecho, en la parte baja aparecen las opciones para configurarlo como te digo.
En esa misma pantalla, pero en la primera opción (Método de chat), puedes leer lo siguiente:
El método normal de chat implica que los usuarios contactan con el servidor de forma regular para llevar a cabo las actualizaciones. No requiere configuración y funciona en cualquier parte, pero puede ocasionar una sobrecarga en el servidor cuando hay muchos usuarios simultáneamente en la sala.
Utilizar un 'daemon' (i.e., proceso de ejecución independiente en segundo plano) en el servidor requiere el acceso shell (de intérprete de comandos) a Unix, pero resulta en un ambiente de chat más rápido y escalable.
Otra opción es olvidarte del chat de Moodle y colocar uno externo.
Esta posibilidad se trata aquí.
Y si te vas por los rollos de la mensajería en vez del chat, igual y con eBuddy logras algo.
Lo que sí, todas las opciones que no son usar el chat de Moodle implican que la info no estará en tu base de datos.
Saludos