我试图重新连接客户端,如果由于某种原因使用Python'连接断开'&带Twisted的高速公路。带有扭曲的Python&Autobahn:在重新连接客户端工厂中重置maxRetries
有一个很好的例子here使用ReconnectingClientFactory设置,但我的问题是围绕maxRetries。
在脚本执行过程中,总共允许设置5的方式。
class EchoClientFactory(ReconnectingClientFactory, WebSocketClientFactory):
protocol = EchoClientProtocol
# http://twistedmatrix.com/documents/current/api/twisted.internet.protocol.ReconnectingClientFactory.html
#
maxDelay = 10
maxRetries = 5
def startedConnecting(self, connector):
print('Started to connect.')
def clientConnectionLost(self, connector, reason):
print('Lost connection. Reason: {}'.format(reason))
ReconnectingClientFactory.clientConnectionLost(self, connector, reason)
def clientConnectionFailed(self, connector, reason):
print('Connection failed. Reason: {}'.format(reason))
ReconnectingClientFactory.clientConnectionFailed(self, connector, reason)
如果例如存在这样的问题,并在客户端连接后2重试然后仅存在3个左和连接成功后的数量并不“复位”。
这是如何实现的,意思是在连接成功后将maxRetries重置为5,如果可能的话?
谢谢!
科斯塔斯·