我正在尝试在Tornado中实现长轮询客户端,与异步的Tornado服务器进行交互。
情况有两种:
1. 客户端超时。 2. 客户端在完成整个后台进程后一次性接收所有消息,类似于阻塞式的操作。
这是我使用的客户端:
情况有两种:
1. 客户端超时。 2. 客户端在完成整个后台进程后一次性接收所有消息,类似于阻塞式的操作。
这是我使用的客户端:
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中的异步服务器示例,我会非常感激,因为也许我正在错误地编写Tornado彗星服务器...总的来说,我对整个长轮询过程还比较陌生。