非同期のトルネードサーバーと相互作用するロングプルクライアントをトルネードに実装しようとしています。
何が起こるかは2つのことの1つです:
- クライアントのタイムアウト、または
- クライアントは、メッセージをブロックするのと同様に、バックグラウンドプロセス全体を完了した後、すべてのメッセージを一度に受信します
これは私が使用するクライアントです:
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()
これは、長いポーリング/彗星のクライアントを作成する正しい方法ですか?
また、トルネードでサンプルの非同期サーバーを提供するために答えてくれる人にも感謝します。なぜなら、私はコメットされたトルネードサーバーを間違って書いているのかもしれません...私は一般的なロングポーリングプロセス全体に少し慣れていません。