[pyar] Long running process controlado via HTTP

Lucas rollbak en gmail.com
Jue Jun 14 01:42:37 ART 2012


2012/6/13 Eka (Esteban Feldman) <ekagaurangadas en gmail.com>

> 2012/6/13 Eka (Esteban Feldman) <ekagaurangadas en gmail.com>
>
>> 2012/6/13 Daniel Moisset <dmoisset en machinalis.com>
>>
>>> 2012/6/13 Eka (Esteban Feldman) <ekagaurangadas en gmail.com>:
>>> > Hola pyar.
>>> >
>>> > Necesito hacer un proceso long running el cual pueda ser controlado via
>>> > HTTP, iniciar cosas, pararlas, obtener informe, etc.... En el mejor de
>>> los
>>> > casos que seas solo 1 proceso.
>>> > La pregunta es como encararian uds esto?
>>> >
>>> > Mi idea inicial es Flask[0] + Gevent[1].
>>> > rbistolfi sugirio en el canal de IRC usar hookbox [2]
>>> >
>>> > Ideas, comentarios?
>>>
>>> Tu proceso hace casi todo lo que hace como respuesta a pedidos http, o
>>> tu procesos hace cosas por si solo, y opcionalmente puede realizar
>>> operaciones "de control" via HTTP?
>>>
>>> Cosas como flask/django/cualquier framework web están como más
>>> orientados al primer caso de uso (lo que hace difícil meter código que
>>> viva fuera del ciclo request/response). Si tu caso de uso es el
>>> segundo (me da esa idea lo que contas), por ahi te conviene algo mas
>>> similar a twisted, que podes poner un web server dentro de una app que
>>> hace otras cosas.
>>>
>>> Saludos,
>>>   D.
>>> _______________________________________________
>>> pyar mailing list pyar en python.org.ar
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>
>> Daniel,
>> el mio es una mezcla, dado que inicias procesos largos desde la interface
>> HTTP, no estan corriendo al comenzar el servicio, pero lo que podes hacer
>> despues que los iniciaste es, pararlo, pausarlo, ver info de status, etc...
>> Pero dado que los procesos son considerados largos, o sea pueden durar 5
>> minutos o mas, dependiendo del tipo de accion etc... parece para el caso 2.
>> Si es posible evitar Twisted mejor. Tenes un ejemplo para mirar en Twisted?
>>
>> Saludos
>>
>>
>> --
>> Chant Hare Krishna and Be Happy
>>
>> Eka
>>
>
> Me gustaria aclarar algo, cuando me refiero a procesos, no me refiero a
> procesos separados, si no a lo que seria un grupo de acciones, de los
> cuales puede haber muchos al mismo tiempo.
>
> Ej: Pingear este sitio a este url y reportar el resultado cada 5 seg por 5
> min.
>
> De esos "procesos" puede haber varios activados al mismo tiempo, lo que
> quiero es poder ver los resultados, pararlos, pausarlos, etc...
>
> Saludos
>
> Eka
>
>
> --
> Chant Hare Krishna and Be Happy
>
> Eka
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>



Yo te recomiendo Tornado [0], tiene handlers web y ademas el IOLoop tiene
el soporte que necesitas para hacer muchas tareas al mismo tiempo desde el
mismo proceso, incluso tiene en su api HttpClient asincrónico que te va a
vernir muy bien para implementar cosas al estilo del ejemplo que diste del
PING.

[0] http://www.tornadoweb.org/


Saludos,

-- 
Lucas
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20120614/5eed8e5f/attachment.html>


More information about the pyar mailing list