Limit connection pool size to 4
issue5787 review28661003
This commit is contained in:
1 parent
d016d4c08c
commit
2e6c7ce418
1 file changed
+8
@@ -315,6 +315,7 @@ class ServerProxy(xmlrpclib.ServerProxy):
|
||||
|
||||
|
||||
class ServerPool(object):
|
||||
keep_max = 4
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
self.ServerProxy = partial(ServerProxy, *args, **kwargs)
|
||||
@@ -337,10 +338,17 @@ class ServerPool(object):
|
||||
self._pool.append(conn)
|
||||
del self._used[id(conn)]
|
||||
|
||||
# Remove oldest connections
|
||||
while len(self._pool) > self.keep_max:
|
||||
conn = self._pool.pop()
|
||||
conn.close()
|
||||
|
||||
def close(self):
|
||||
with self._lock:
|
||||
for conn in self._pool + self._used.values():
|
||||
conn.close()
|
||||
self._pool = []
|
||||
self._used.clear()
|
||||
|
||||
@property
|
||||
def ssl(self):
|
||||
|
||||
Reference in new issue
Block a user