Tornado 尝试定期重新连接 iostream

Tornado try to reconnect iostream periodically

我用的是tornado 5.1

有一个套接字iostream:

self.socket = socket.socket()
self.stream = tornado.iostream.IOStream(self.socket)
self.stream.connect((self.ip, self.port), self.connect_callback)

如果出现 WSAECONNREFUSED 或任何其他导致其关闭的错误,我需要重新连接它。
还有。如果连接处于活动状态,则不会重新连接。只有在流关闭时才能执行此尝试重新连接的过程。

是的,唯一需要的是进行 PeriodicCallback:

server = MainServer() # an instance of tornado.web.Application
server.listen(8888)

reconnect_periodic_callback = tornado.ioloop.PeriodicCallback(
    server.reconnect_closed_clients, 5000
)
reconnect_periodic_callback.start()

tornado.ioloop.IOLoop.instance().start()