我試圖重新連接客戶端,如果由於某種原因使用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,如果可能的話?
謝謝!
科斯塔斯·