당신은 그렇지 않으면 인쇄 기능을 고토, A는 첫 번째가 실패 할 경우
class MyClientFactory(ClientFactory):
protocol = ClientProtocol
def __init__(self, request):
self.request = request
self.deferred = defer.Deferred()
def handleReply(self, command, reply):
# Handle the reply
self.deferred.callback(0)
def clientConnectionFailed(self, connector, reason):
self.deferred.errback(reason)
def send(_, host, port, msg):
factory = MyClientFactory(msg)
reactor.connectTCP(host, port, factory)
return factory.deferred
d = Deferred()
d.addErrback(send, host1, port1, msg1)
d.addErrback(send, host2, port2, msg2)
# ...
d.addBoth(lambda _: print "finished")
이 다음 errback를 트리거 그렇게하는 연기 사용할 수 있습니다.
죄송합니다. 마지막으로 답변을 찾았습니다. http://stackoverflow.com/questions/14255289/twisted-reconnectingclientfactory-connection-to-different-servers –