2
0
mirror of https://github.com/xcat2/confluent.git synced 2025-08-26 13:10:38 +00:00

Have apiclient priotize based on responsiveness

This commit is contained in:
Jarrod Johnson
2021-10-19 17:09:52 -04:00
parent 75557091ef
commit 484a3f8c64

View File

@@ -96,6 +96,7 @@ def scan_confluents():
s4.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_IF, addr[1])
s4.sendto(msg, ('239.255.255.250', 1900))
r = select.select((s4, s6), (), (), 4)
srvlist = []
if r:
r = r[0]
while r:
@@ -111,10 +112,11 @@ def scan_confluents():
elif line.startswith(b'MGTIFACE: '):
current['mgtiface'] = line.replace(b'MGTIFACE: ', b'').strip().decode('utf8')
srvs[peer[0]] = current
srvlist.append(peer[0])
r = select.select((s4, s6), (), (), 2)
if r:
r = r[0]
return srvs
return srvlist, srvs
def get_net_apikey(nodename, mgr):
@@ -267,9 +269,9 @@ class HTTPSClient(client.HTTPConnection, object):
continue
break
if not foundsrv:
srvs = scan_confluents()
srvlist, srvs = scan_confluents()
hosts = []
for srv in srvs:
for srv in srvlist:
if srvs[srv].get('isdefault', False):
hosts = [srv] + hosts
else: