Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Mundo Perl » Avanzado » Configurar script para que se ejecute cada cierto tiempo Responder al tema
Nuevo tema


Página 1 de 1  [ 8 mensajes ] 
 
Nota 2011-08-18 07:09 @340
Avatar de Usuario
Vive para Perl en Español
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia
Mensajes: 551
Configurar script para que se ejecute cada cierto tiempo
Buen día a todos...

Lo que necesito saber es cómo podría hacer un script, para administrar unos bots que se deben ejecutar cada cierto tiempo.

Ej.

Que un bot que va a mi página a checar información se ejecute cada 2 horas.

Sé que lo podría hacer con un cron jobs pero, ¿hay forma de administrar esos jobs, si ya hay alguna solución, o que se puedan crear esos jobs por un administrador?

Lo ideal es que fuera para Windows y Linux...

Gracias.

_________________
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org


Nota 2011-08-18 10:07 @463
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10249
Re: Configurar script para que se ejecute cada cierto tiempo
El problema de Windows es que, en cada nueva versión que saca Micro$oft, te puede cambiar la forma de realizar las tareas programadas.

Lo normal es usar el Task Scheduler (Tareas Programadas) del Panel de Control, pero en algunas versiones no está, o tiene otro nombre. También existe el comando at, que intenta igualar en prestaciones al comando del mismo nombre en UNIX. Y tampoco está garantizado que esté en todas las versiones de Windows.

Hay algunos módulos en Perl que realizan la gestión de tareas, tanto en Linux como en Windows (mucho más en Linux, por supuesto, y muy pocos que lo hagan en los dos sistemas a la vez).

He encontrado Sys::Manage::Desktops, snaked, EV y el recomendado AnyEvent.

Yo siempre he usado el cron del sistema, porque me es cómodo, lo conozco desde hace mucho tiempo, y... porque solo uso Linux, naturalmente :)

_________________
JF^D Perl programming


Nota 2011-08-18 10:43 @488
Avatar de Usuario
Vive para Perl en Español
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia
Mensajes: 551
Re: Configuarar script para que se ejecute cada cierto tiempo
Pues sí, yo sé usar el cron de UNIX...

Pero alguno de estos módulos permite agregar los cron, verlos y editarlos, a eso es que me refiero...

Ahí creo entender alguno para que ejecute un script de Perl un sub...

¿Cuál has usado para ello, explorer?

¿Cómo ves este módulo: http://search.cpan.org/~roland/Schedule ... le/Cron.pm
http://search.cpan.org/~roland/Schedule-Cron-1.01/lib/Schedule/Cron.pm?

_________________
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org


Nota 2011-08-18 12:00 @542
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10249
Re: Configurar script para que se ejecute cada cierto tiempo
Pero como has comentado a Windows, he supuesto que te referías a buscar una solución que funcionara en ambos sistemas. Y cron no está (que yo sepa) para un Windows pelado.

Si estás interesado en la gestión de los ficheros crontab, hay unos cuántos módulos al respecto, como Config::Crontab.

Y no... no he usado ninguno de forma directa.

Yo soy más de editar los ficheros crontab "a pelo".

Bien es cierto que, en algunos instalaciones, es interesante saber de alguna manera que permita instalar, de forma automática, este tipo de archivos. Yo no he usado estos sistemas, pero he leído sobre FAI, pero me parece que no es lo que buscas.

_________________
JF^D Perl programming


Nota 2011-08-21 14:42 @654
Avatar de Usuario
Vive para Perl en Español
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia
Mensajes: 551
Re: Configurar script para que se ejecute cada cierto tiempo
Gracias, explorer. Entonces según lo que veo, los cron jobs los tengo que crear manualmente y luego con el Config::Crontab manipularlos y/o editarlos... Eso sería interesante. Bueno, al final trabajaremos solo en Linux. En Windows es algo más fácil pero se trabajará en Linux ya que son muchos bots los que se harán.

La parte de instalar automáticamente me parece super, pero requiere mas investigación.

_________________
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org


Nota 2011-08-21 15:23 @683
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10249
Re: Configurar script para que se ejecute cada cierto tiempo
Si van a ser muchas programaciones quizás lo mejor es que se haga completamente en Perl, en un programa que no termine nunca, con AnyEvent, por ejemplo.

Lo bueno del sistema de cron es que puedes modificar cada programación por separado, sin interferir en el funcionamiento de los demás.

_________________
JF^D Perl programming


Nota 2011-08-21 19:17 @845
Avatar de Usuario
Vive para Perl en Español
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia
Mensajes: 551
Re: Configurar script para que se ejecute cada cierto tiempo
Actualmente tenían uno en PHP que al parecer consumía todo el server. El que hizo eso se retiró, imagino le quedó grande...

Ahora en Perl con lo que me dices, pensé que el AnyEvent era para manipular cron :S ... Creo que sería más fácil con AnyEvent porque al parecer la configuración de los bots la tomaría desde una tabla MySQL directamente. O me equivoco :S

_________________
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org


Nota 2011-08-22 05:09 @256
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10249
Re: Configurar script para que se ejecute cada cierto tiempo
No creo que tenga que ver con base de datos.

Lo que dice la documentación es que AnyEvent, es al sistema de gestión de eventos, como el DBI es al sistema de gestión de bases de datos. Es un símil. Quiere decir que con AnyEvent se puede programar eventos, temporizadores, disparadores, con una sintaxis completamente independiente del módulo que se vaya a utilizar para hacerlo (EV, Event, Glib, Tk, Perl, Event::Lib, Irssi, rxvt-unicode, IO::Async, Qt y POE).

Pero no cuesta mucho hacer un temporizador que se encargue de, periódicamente, acceder a una base de datos, y ver si tiene que eliminar o levantar más temporizadores.

_________________
JF^D Perl programming


Responder al tema  [ 8 mensajes ] 

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO