Sobre las notificaciones email del foro (y otras hierbas)

Sobre las notificaciones email del foro (y otras hierbas)

de Marc Bria Ramirez -
Número de respuestas: 5
Hola a to@s,

Los usuarios de un grupo para el que trabajo me han preguntado si es posible recibir las notificaciones de respuesta a sus mensajes del foro en el momento en que se generan (y no cada 24h como sucede ahora).

Me he mirado el módulo y por lo que entiendo, la notificación se genera durante la ejecución del admin/cron.php, luego he pensado en ejecutar llamar al cron.php cada horita y reducir así el tiempo de espera.

¿Alguien sabe si esta es la solucion recomendada o si existe una propuesta mejor?
¿Voy desencaminado y la carga que implica la acción que propongo es una barbaridad?

Mil gracias por adelantado,

Marc.
Promedio de valoraciones: -
En respuesta a Marc Bria Ramirez

Re: Sobre las notificaciones email del foro (y otras hierbas)

de Iñaki Arenaza -
Imagen de Desarrolladores Imagen de Desarrolladores de plugins Imagen de Documentadores Imagen de Moderadores Imagen de Moodlers de gran ayuda
No sé cuantos usuarios y cuantos foros tienes. Si no tienes demasiados, ejecutarlo cada hora (o incluso cada 30 minutos) no suele ser tan costoso en tiempo de CPU.

Saludos. Iñaki.
En respuesta a Iñaki Arenaza

Re: Sobre las notificaciones email del foro (y otras hierbas)

de Marc Bria Ramirez -
Hola Iñaki,

Gracias por tu respuesta.

Espero estes ya recuperado de la moot. A mi la resaca me dejó nostálgico. guiño

De momento son 400 usuarios... pero entre este año y el que viene subirá y bastante (o al menos eso espero).

Perdona que me ponga en modo incrédulo sacar lengua pero... ¿en serio que lo del cron es la mejor solución posible? Si tu me lo dices, me lo creo "a pies juntillas"... pero ¿no sería "más mejor" que con cada post al foro el módulo revisara a quien debe notificar y se quitase esa tarea de encima?

Vale que los diggest no tiene sentido enviarlos cada hora... pero las notificaciones a los que participan en un hilo... no se, me sorprende que uno de los módulos más importantes de moodle no contemple esta posibilidad que aligera la carga y ofrece mejor servicio.

¿Se me pasa algo por alto?

Un cordial saludo,

    m.



En respuesta a Marc Bria Ramirez

Re: Sobre las notificaciones email del foro (y otras hierbas)

de Juan Emilio Fuentes -
Hola Marc: Prueba con la activación de los RSS en el Forum los cuales en cuanto te conectas y hay una nueva contribución te informa. Saludos, Juan
En respuesta a Juan Emilio Fuentes

Re: Sobre las notificaciones email del foro (y otras hierbas)

de Marc Bria Ramirez -
Gracias Juan por tu respuesta.

Me planté usar RSS, pero me surgieron 2 inconvenientes de difícil solución:
  1. La mayoría de mis usuarios responderán con cara de susto si les hablo de RSS y no van a saber como sindicarse.
  2. La actualización de los RSS tambien dependen del cron... así que volvemos al punto de partida. sonrisa
Me suena de algo un parche para el módulo de foros que implementaba una solución como la que proponía en mi anterior mensaje (resumiendo: cada vez que se cuelga un nuevo mensaje, el módulo revisa quien ha solicitado notificación y las manda al momento) así que buscaré a ver si lo encuentro y luego os digo.

Mientras, hemos hecho caso a Iñaki (y a las Moodle Docs, que para algo están blush) y ahora ejecutamos el cron cada 10 minutos.

En linux, es tan simple como añadir la siguiente entrada al /etc/crontab:

*/10 *  * * *   root    wget -q -O /dev/null http://www.ejemplo.net/admin/cron.php

Lo que hemos notado (por si alguno se encuentra con las mismas dudas), es que el mensaje sólo pasa a la "cola de mensajes a enviar" tras el tiempo de edición.

O sea, que si el cron se ejecuta cada 5 minutos, pero la reedición del mesaje es posible cada 30, la notificación se mandará a los 30-35 minutos.

Ni que decir que si alguno tiene más ideas, son bienvenidas.

Salu2 y gracias por todo a todos,

m.
En respuesta a Marc Bria Ramirez

Re: Sobre las notificaciones email del foro (y otras hierbas)

de Iñaki Arenaza -
Imagen de Desarrolladores Imagen de Desarrolladores de plugins Imagen de Documentadores Imagen de Moderadores Imagen de Moodlers de gran ayuda
En realidad, desde el punto de vista de carga de trabajo puede que sea mejor idea hacer procesamiento en batch desde cron. Así hace las consultas a la base de datos sólo una vez (en lugar de un montón) y luego puede enviar los mensajes de una tacada. En todo caso, le da más flexibilidad al administrador de la plataforma de elegir si quiere algo más de carga puntual del equipo (por las consultas a la base de datos) pero más repartida en el tiempo (con un cron más habitual) o una carga puntual más alta, pero en periodos del día en que el uso de la plataforma es baja (con un cron más espaciado).

En nuestro caso, que somos muy brutos, tenemos pocos usuarios y un servidor bastante potente, lanzamos cron cada 5 minutos. Y suele terminar en menos de 3-5 segundos cuando no toca ninguna tarea muy pesada (como el procesamiento de estadísticas, pero este proceso lo lanzamos por la noche). Como además el servidor de Moodle tiene un servidor de correo, Moodle despacha el correo a toda pastilla (con lo que gasta poca CPU) y el servidor de correo se encarga de irlo sacando a su ritmo.

Saludos. Iñaki.