Я пытаюсь реализовать в Tornado клиента с длительной загрузкой, который взаимодействует с асинхронным сервером Tornado.
Происходит одно из двух:
- Либо тайм-аут клиента, либо
- Клиент получает сразу все сообщения после завершения всего фонового процесса, аналогично блокирующим.
Это клиент, который я использую:
from tornado import ioloop
from tornado import httpclient
print "\nNon-Blocking AsyncHTTPClient"
import tornado.ioloop
def async_call(response):
if response.error:
response.rethrow()
print "AsyncHTTPClient Response"
ioloop.IOLoop.instance().stop()
http_client = httpclient.AsyncHTTPClient()
http_client.fetch("http://localhost:9999/text/", async_call)
ioloop.IOLoop.instance().start()
Это правильный способ написать клиент с длинным опросом / кометой?
Я также был бы признателен тем, кто ответит, чтобы предоставить образец асинхронного сервера в Tornado, потому что, возможно, я неправильно пишу сервер Cometed Tornado ... Я немного новичок во всем процессе длительного опроса в целом.