diff --git a/trytond/protocols/jsonrpc.py b/trytond/protocols/jsonrpc.py index 3d198bb7ca..3358f1e8de 100644 --- a/trytond/protocols/jsonrpc.py +++ b/trytond/protocols/jsonrpc.py @@ -274,6 +274,8 @@ class SimpleThreadedJSONRPCServer(SocketServer.ThreadingMixIn, def server_bind(self): self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + self.socket.setsockopt(socket.SOL_SOCKET, + socket.SO_KEEPALIVE, 1) SimpleJSONRPCServer.server_bind(self) diff --git a/trytond/protocols/webdav.py b/trytond/protocols/webdav.py index ad941550c4..641b928904 100644 --- a/trytond/protocols/webdav.py +++ b/trytond/protocols/webdav.py @@ -83,6 +83,8 @@ class BaseThreadedHTTPServer(SocketServer.ThreadingMixIn, def server_bind(self): self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + self.socket.setsockopt(socket.SOL_SOCKET, + socket.SO_KEEPALIVE, 1) BaseHTTPServer.HTTPServer.server_bind(self) diff --git a/trytond/protocols/xmlrpc.py b/trytond/protocols/xmlrpc.py index f3e913ce70..def53a534a 100644 --- a/trytond/protocols/xmlrpc.py +++ b/trytond/protocols/xmlrpc.py @@ -177,6 +177,8 @@ class SimpleThreadedXMLRPCServer(SocketServer.ThreadingMixIn, def server_bind(self): self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + self.socket.setsockopt(socket.SOL_SOCKET, + socket.SO_KEEPALIVE, 1) SimpleXMLRPCServer.SimpleXMLRPCServer.server_bind(self)