Tornado es grande, si se puede codificar de forma asíncrona ...
Greenlet es genial para crear programas asíncronos utilizando micro-hilos.
¿Qué pasa con una mezcla de los dos? Estamos orgullosos de presentar Tornalet.
Howto
Para instalar tornalet, puede clonar este repositorio o utilizar PyPI:
easy_install tornalet
PIP instalar tornalet
Para habilitar tornalet, preceda cada uno de método de su manejador el decorador @ tornalet.tornalet.
Luego decorar con tornalet.asyncify cada uno de su función de bloqueo. Esto hará que su función asíncrona.
Ejemplo
tornalet importación
tornado.web importación
importación azar
URL = "http://chucknorrisfacts.fr/fortunes/fortunes.txt"
clase MainHandler (tornado.web.RequestHandler):
& Nbsp; @ tornalet.tornalet
& Nbsp; def conseguir (self):
& Nbsp; http_client = tornado.httpclient.AsyncHTTPClient ()
& Nbsp; # Aquí está la magia: esta línea no es sincrónico.
& Nbsp; hechos = tornalet.asyncify (http_client.fetch) (URL) .body.split ("%")
& nbsp; de hecho = hechos [random.randrange (len (hechos))]
& Nbsp; self.write ("% s"% (hecho))
...
Requisitos :
- Python
Comentarios que no se encuentran