Написал небольшое приложение с помощью pyramid. Всё работает прекрасно, но если делать слишком много конкурентных запросов (>50) появляются такие ошибки:
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 51307)
Traceback (most recent call last):
File "/usr/lib64/python2.7/SocketServer.py", line 284, in _handle_request_noblock
self.process_request(request, client_address)
File "/usr/lib64/python2.7/SocketServer.py", line 310, in process_request
self.finish_request(request, client_address)
File "/usr/lib64/python2.7/SocketServer.py", line 323, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/lib64/python2.7/SocketServer.py", line 641, in __init__
self.finish()
File "/usr/lib64/python2.7/SocketServer.py", line 694, in finish
self.wfile.flush()
File "/usr/lib64/python2.7/socket.py", line 303, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 32] Broken pipe
----------------------------------------
Как устранить эту проблему? Или она возникает из-за нехватки ресурсов (открытых сокетов OS, и т.д.)? В таком случае какие конфиги/опции ядра в линуксе регулируют количество этих ресурсов?