Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » Drupal »

Cron / poormanscron / notify

Estas en el tema de Cron / poormanscron / notify en el foro de Drupal en Foros del Web. Hola foreros He escrito un módulo que realiza una busqueda de cierta información en una serie de nodos la extrae y guarda como nodo de ...
  #1 (permalink)  
Antiguo 31/10/2009, 01:56
Avatar de luismiramos  
Fecha de Ingreso: agosto-2009
Mensajes: 37
Antigüedad: 15 años, 3 meses
Puntos: 0
Cron / poormanscron / notify

Hola foreros

He escrito un módulo que realiza una busqueda de cierta información en una serie de nodos la extrae y guarda como nodo de un tipo de contenido específico, emulando la tabla "variable" de Drupal. Esta función es lanzada con un hook_cron.

Tengo configurado poormanscron para que lance cron cada 20 minutos.

Tengo configurado notify para que realice el envío del tipo de contenido creado por mi módulo cada 8 horas. Notify guarda la hora de envio, para contabilizar 8 horas más a partir de esta.

Bien, el problema es que poormanscron, no ejecuta cron mientras no se haga un acceso al sitio, si el acceso se hace por ejemplo 2 horas después de que le tocara hacer un envío, tendré estas 2 horas de retraso a partir de este envío e iré acumulando retrasos cada vez que esto suceda.

He leido que existe la posibilidad de que sea el servidor el que se encargue de hacer llamadas cron con crontab o algo así. Pero no tengo ni la menor idea de por donde meterle mano a este tema, ¿podeís iluminarme?

Saludos
  #2 (permalink)  
Antiguo 02/11/2009, 02:59
Avatar de luismiramos  
Fecha de Ingreso: agosto-2009
Mensajes: 37
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Cron / poormanscron / notify

Bueno Creo que tengo la solución a esto, aunque aun no lo he probado.
Como indiqué en el post anterior, hay que modificar el crontab. Al trabajar habitualmente con Windows, no conocía crontab y pensé que era parte de drupal.
Crontab es el equivalente Unix a tareas programadas de Windows.
Si tenemos pivilegios para editar el crontab del servidor, podemos llamarlo con la orden
crontab -e
y agregar la linea
30 7,15,23 * * * curl –silent –compressed la_ruta_de_mi_instalación_drupal/cron.php
que ejecutará el cron de drupal de nuestro sitio a las 7h30m, 15h30m, 23h30m
el formato a seguir es el siguiente:

minuto (0-59),
|.....hora (0-23),
|.....|...día del mes (1-31),
|.....|...|...mes (1-12),
|.....|...|...|...día de la semana (0-6 donde 0=Domingo)
|.....|...|...|...|.....comandos
15 02 * * *

Los asteriscos son comodines.

Si me equivoco, por favor, corregidme.

Un cordial saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:48.