update peers script

This commit is contained in:
ThomasV 2014-08-05 12:44:43 +02:00
parent 291038a586
commit a4d904bfd3

View file

@ -28,7 +28,6 @@ print "Contacting %d servers"%len(peers)
# start interfaces # start interfaces
config = SimpleConfig() config = SimpleConfig()
interfaces = map ( lambda server: Interface(server, config), peers ) interfaces = map ( lambda server: Interface(server, config), peers )
results_queue = Queue.Queue()
reached_servers = [] reached_servers = []
for i in interfaces: for i in interfaces:
i.start(q) i.start(q)
@ -46,8 +45,7 @@ while peers:
if i.server in peers: if i.server in peers:
peers.remove(i.server) peers.remove(i.server)
if i.is_connected: if i.is_connected:
i.send_request({'method':'blockchain.headers.subscribe','params':[]}, results_queue) reached_servers.append(i)
reached_servers.append(i.server)
else: else:
print "Connection failed:", i.server print "Connection failed:", i.server
@ -83,11 +81,15 @@ def analyze(results):
return out return out
results_queue = Queue.Queue()
for i in reached_servers:
i.send_request({'method':'blockchain.headers.subscribe','params':[]}, results_queue)
results = {} results = {}
while reached_servers: while reached_servers:
i, r = results_queue.get(timeout=10000) i, r = results_queue.get(timeout=10000)
results[i.server] = r.get('result') results[i.server] = r.get('result')
reached_servers.remove(i.server) reached_servers.remove(i)
i.stop() i.stop()
errors = analyze(results).keys() errors = analyze(results).keys()