Tornado är stor, om du kan koda asynkront ...
Greenlet är coolt att skapa asynkrona program med mikrotrådar.
Vad sägs om en kombination av båda? Vi är stolta att presentera Tornalet.
Howto
För att installera tornalet, kan du klona detta förvar eller använd PyPI:
easy_install tornalet
Pip installera tornalet
För att aktivera tornalet, prefix alla dina hanterare metod dekoratör @ tornalet.tornalet.
Sedan dekorera med tornalet.asyncify alla dina blockeringsfunktion. Detta kommer att göra din funktion asynkron.
Exempel
import tornalet
import tornado.web
import slumpmässig
URL = "http://chucknorrisfacts.fr/fortunes/fortunes.txt"
klass MainHandler (tornado.web.RequestHandler):
& Nbsp; @ tornalet.tornalet
& Nbsp; def få (själv):
& Nbsp; http_client = tornado.httpclient.AsyncHTTPClient ()
& Nbsp; # Här är magi: denna linje inte är synkron.
& Nbsp; fakta = tornalet.asyncify (http_client.fetch) (URL) .body.split ("%")
& nbsp; faktum = fakta [random.randrange (len (fakta))]
& Nbsp; self.write ("% s"% (faktiskt,))
...
Krav :
- Python
Kommentarer hittades inte