SCHEDULER

8 views
Skip to first unread message

lsamada

unread,
Nov 16, 2009, 11:42:26 PM11/16/09
to symfony-es
Hola:
Debo hacer un módulo en mi sitio(symfony) que me permita gestionar
tareas del sitio.
El Objetivo es que constantemente este módulo esté chequeando las
tareas que tengo en mi BD, (una tarea puede ser por ejemplo enviar un
correo a un usuario del sitio) y si una de estas tareas tiene como
fecha de ejecución una fecha igual a la del sistema o menor, la mande
a ejecutar (en este caso que se envie el correo).
- Alguien sabe si existe algo de esto echo anteriormente en symfony
(algo asi como un plugin)?
- Es recomendable hacer este trabajo con PHP(symfony) ?
- Maneja bien php hilos del sistema ?

Agradesco cualquier idea, Gracias

williams

unread,
Nov 16, 2009, 11:53:23 PM11/16/09
to symfo...@googlegroups.com
No creo que pueda ser un modulo de symfony ya que requieres de un proceso tal como una tarea programada. Una vez  tuve que programar un modulo (sin symfony) que tenia que leer correos de una cuenta pop3 y guardar el registro de los usuarios que habian enviado dicho email. Esto lo hice ejecutando un script php que hacia todo esto mediante una tarea programada en windows y con el interpretador php de consola. No creo que se pueda hacer con symfony puesto que la aplicacion general se ejecuta con la configuracion del php.ini del servidor.

Bueno si no me explique, repostea

murkein


--- El mar 17-nov-09, lsamada <lsa...@estudiantes.uci.cu> escribió:


¡Obtén la mejor experiencia en la web!
Descarga gratis el nuevo Internet Explorer 8
http://downloads.yahoo.com/ieak8/?l=e1

José Leonardo Diaz Ordoñez

unread,
Nov 17, 2009, 10:37:40 AM11/17/09
to symfo...@googlegroups.com
Puedes usar symfony, crear una tarea y ejecutarla mediante un CRON [1,2], pero dependiendo de que tan complicada (nivel de procesamiento, memoria, duracion, cada cuanto) sea la tarea, es recomendable hacerla en php puro, obviamente es un poco mas de trabajo, pero minimiza cualquier impacto indirecto, debido al framework, sobre tu aplicación.

--
----------------------------------------------------------
José Leonardo Diaz Ordoñez
Ingeniero en Electrónica y Telecomunicaciones
Énfasis en Ingeniería Telemática.
Universidad del Cauca, Popayán -Colombia
2007

lsamada

unread,
Nov 18, 2009, 6:04:03 PM11/18/09
to symfony-es
Gracias a los dos por responderme,
Williams quisas no tengo bien clado el consepto de módulo como
mencioné pero mi objetivo es hacer esto en una parte de mi sitio.

Jose Leonardo Eso fué en lo primero que pené pero los clientes lo
quiren como una parte del sitio, es decir que no tenga que depender
del CRON o del sistema operativo sobre el cual este montado el
servidor de la aplicación. De todas formas agradesco tu idea.

lsamada

unread,
Nov 23, 2009, 7:39:30 PM11/23/09
to symfony-es
Hola, alguna idea ???

José Leonardo Diaz Ordoñez

unread,
Nov 24, 2009, 2:34:37 PM11/24/09
to symfo...@googlegroups.com
Si necesitas hacerlo sin que dependa del sistema operativo, ni CRON, creo que la unica opcion restante seria crear una especie de demonio en java, que haria lo mismo que el CRON pero ahora seria multiplataforma, ademas tendrias la posibilidad de controlar y gestionar los hilos necesarios. 

El demonio en java no necesita comunicarse con la aplicacion en php o symfony, lo unico que haria seria consultar la BD para ver si hay tareas pendientes y realizarla deacuerdo al tipo de tarea.
Los clientes gestionan los datos de la tabla de tareas, pero no el demonio.

Recuerdo que hace un tiempo intente hacer algo parecido, pero nunca lo terminé. Encontre que para hacer demonios en java se puede hacer con

http://commons.apache.org/daemon/

pero tambien encontre una forma mas facil (pero solo para linux), convierte un programa normal de java en un hilo que no requiere tener la consola abierta para su ejecucion continua.

http://barelyenough.org/blog/2005/03/java-daemon/ 

leete los comentarios que hacen mejoras al artículo.

Este es otro recurso que tenia en los bookmarks
http://kim.tensta.gannert.se/projects/jada/    pero no recuerdo bien por que no lo utilice


El 23 de noviembre de 2009 19:39, lsamada <lsa...@estudiantes.uci.cu> escribió:

Hola, alguna idea ???



Jose Regalado

unread,
Nov 24, 2009, 6:29:48 PM11/24/09
to symfo...@googlegroups.com
Saludos...
 
Solo mira acá:
 
--
José Luis Regalado
bashman
Linux User nº 280381

Jose Regalado

unread,
Nov 24, 2009, 6:31:05 PM11/24/09
to symfo...@googlegroups.com
El 24 de noviembre de 2009 18:59, Jose Regalado <djd...@gmail.com> escribió:
Saludos...
 
Solo mira acá:
 
El 17 de noviembre de 2009 00:12, lsamada <lsa...@estudiantes.uci.cu> escribió:


Hola:
Debo hacer un módulo en mi sitio(symfony) que me permita gestionar
tareas del sitio.
El Objetivo es que constantemente este módulo esté chequeando las
tareas que tengo en mi BD, (una tarea puede ser por ejemplo enviar un
correo a un usuario del sitio) y si una de estas tareas tiene como
fecha de ejecución una fecha igual a la del sistema o menor, la mande
a ejecutar (en este caso que se envie el correo).
- Alguien sabe si existe algo de esto echo anteriormente en symfony
(algo asi como un plugin)?
- Es recomendable hacer este trabajo con PHP(symfony) ?
 
 
 si necesitas usar las clases del modelo, pues si.  

Jose R. Prieto

unread,
Nov 25, 2009, 4:38:30 AM11/25/09
to symfo...@googlegroups.com
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hay un plugin para sf 1.0 que implementaba un Job Queue en symfony:


http://www.symfony-project.org/plugins/sfJobQueuePlugin


El problema es que parece que el desarrollador abandonó el proyecto
hace tiempo... Además de que el plugin solamente funciona con Propel :(


No obstante, puede servirte de punto de partida...


También, si necesitas algo _potente_ tienes:


http://www.zend.com/en/products/platform/product-comparison/job-queues


Ahora, claro, no se en cuánto anda una licencia de Zend Platform... :/

Jose Regalado escribió:
>
>
> El 24 de noviembre de 2009 18:59, Jose Regalado <djd...@gmail.com

>
>     Saludos...
>     
>     Solo mira acá:
>     
>     http://librosweb.es/symfony_1_2/capitulo16/utilizando_symfony_fuera_de_la_web.html
>
>     El 17 de noviembre de 2009 00:12, lsamada

>     escribió:
>
>
>         Hola:
>         Debo hacer un módulo en mi sitio(symfony) que me permita
>         gestionar
>         tareas del sitio.
>         El Objetivo es que constantemente este módulo esté
>         chequeando las
>         tareas que tengo en mi BD, (una tarea puede ser por ejemplo
>         enviar un
>         correo a un usuario del sitio) y si una de estas tareas
>         tiene como
>         fecha de ejecución una fecha igual a la del sistema o menor,
>         la mande
>         a ejecutar (en este caso que se envie el correo).
>         - Alguien sabe si existe algo de esto echo anteriormente en
>         symfony
>         (algo asi como un plugin)?
>         - Es recomendable hacer este trabajo con PHP(symfony) ?
>
>     
>

>  si necesitas usar las clases del modelo, pues si. 



> --
> José Luis Regalado
> bashman
> Linux User nº 280381
>
> >

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iQEcBAEBAgAGBQJLDPsRAAoJEFlRSentq+j03kMH/1EiFDzshjmKp5i+1dF77vQn
0jALmTyVrILKvrVx9TialQQbfP20cNCveLxi8Qqd/tvm1TLQYVT0uoZYKy0kKNwy
Dn1R4Q7j3EreErPGUonKJX/aOeT0t5Nuc3nDIA33brhTnY1sYRLpLtUX62atW7wA
n9MzaqPKRILDSN6FrAU1lYYkc7gaXKwnmhKPVI9bFfNyHGLQW03wphrUugnRC3Nh
bpoMa8lbOjD9tUF/YWVsznxbg6YYB/Uz8wBpEmXN9TfmT+hFbopEndNPUB0eRepy
QaX6E5wNwVTG4Vu1GdA8bX5pVCiDbOKy7FyuZx4+C+g4m4rTIV/sGCSeCXfYP3M=
=s3yA
-----END PGP SIGNATURE-----

Juan Baixauli Martínez

unread,
Nov 28, 2009, 4:10:03 AM11/28/09
to symfo...@googlegroups.com
Aún a riesgo de que ya hayan respuesto a esto (estoy poniendome al día con los 300 mensajes que tengo en la bandeja de entrada) ... para eso symfony tiene las tareas. Crea un módulo task que ejecute esta acción y prográma el cron para que lo ejecute cuando tu quieras.

Saludos.
Juan.

Juan Baixauli Martínez

unread,
Nov 28, 2009, 4:11:43 AM11/28/09
to symfo...@googlegroups.com
¿véis? ya habian dado una respuesta correcta :)

Saludos.
Juan.
Reply all
Reply to author
Forward
0 new messages