[pyar] [DJANGO] SocketIO Client in django

Daniel Moisset dmoisset en machinalis.com
Lun Dic 28 16:11:00 ART 2015


Pedro,miraste algo de channels? Es un fotk de django que está haciendo
andrew godwin para tratar de resolver ese tipo de problemas. Por ahora esta
medio experimental (la idea es que si anda bien se integre a django)
On Dec 27, 2015 19:31, "Pedro Pezzarini" <jose2190 en gmail.com> wrote:

> ---- Contexto
> Hola querida comunidad, desde hace tiempo vengo desarrollando proyectos en
> Django y hasta ahora no he tenido grandes problemas.
> Pero ahora surgió la necesidad de interconectar en tiempo real multiples
> instancias de los sistemas corriendo que se encuentran en diferentes hosts.
>
> Mi idea es utilizar socketio y conectar a cada sistema para obtener las
> estadísticas en tiempo real, es decir, conectar a la ejecución de django
> como cliente al server.
>
> ---- Problema
> La pregunta es, como hacer que el socket quede escuchando sin que se
> bloquee la ejecucion de django?
>
> Obviamente si alguien tiene una mejor forma de resolver este problema, soy
> todo ojos para leerlo.
>
> Desde ya gracias por el tiempo que emplean en responder.
> Saludos, Pedro
>
>
>
> Esto es lo que estoy intentando hacer sin exito con los events del socket:
> ---- Codigo
>
> from socketIO_client import SocketIO, LoggingNamespace
> from redis import Redis
> from rq import Queue
> from threading import Thread
>
> class DjangoLive(object):
> """docstring for DjangoLive"""
> def __init__(self, host, port):
> super(DjangoLive, self).__init__()
> self.host = host
> self.port = port
> self.connection = None
> self.thread = None
>
> def Connect(self):
> self.connection = SocketIO(self.host, self.port, LoggingNamespace)
> self.connection.on('hi', self.testResponse)
> self.connection.emit('hi', 'hello')
> self.thread = Thread(target = self.Wait)
> self.thread.start()
> #self.thread.join()
>
> def Wait(self):
> self.connection.wait()
>
> def testResponse(self, *args):
> print('testResponse', args)
>
> liveconnection = DjangoLive('localhost', 8080)
> liveconnection.Connect()
>
>
> _______________________________________________
> 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
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20151228/bd0b973f/attachment.html>


Más información sobre la lista de distribución pyar