Limit number of connections

This commit is contained in:
TheKysek 2017-01-21 14:05:13 +01:00
parent 0c5c58e126
commit 1146100168
2 changed files with 7 additions and 3 deletions

View File

@ -28,6 +28,9 @@ class Listener(threading.Thread):
conn, addr = self.s.accept() conn, addr = self.s.accept()
logging.info('Incoming connection from: {}:{}'.format(addr[0], addr[1])) logging.info('Incoming connection from: {}:{}'.format(addr[0], addr[1]))
with shared.connections_lock: with shared.connections_lock:
if len(shared.connections) > shared.connection_limit:
conn.close()
else:
c = Connection(addr[0], addr[1], conn) c = Connection(addr[0], addr[1], conn)
c.start() c.start()
shared.connections.add(c) shared.connections.add(c)

View File

@ -42,6 +42,7 @@ node_pool = set()
unchecked_node_pool = set() unchecked_node_pool = set()
outgoing_connections = 8 outgoing_connections = 8
connection_limit = 150
objects = {} objects = {}
objects_lock = threading.Lock() objects_lock = threading.Lock()