billiejoex a écrit : > Hi, > I'm writing a small asyncore-based server application serving a lot of > clients. When I have to handle more than 1021 client simoultaneously > the 'binded' socket object raises an error: > > [...] > connections: 1018 > connections: 1019 > connections: 1020 > connections: 1021 > Traceback (most recent call last): > File "asyncore_client.py", line 31, in <module> > File "asyncore.py", line 191, in loop > File "asyncore.py", line 138, in poll > File "asyncore.py", line 80, in write > File "asyncore.py", line 76, in write > File "asyncore.py", line 395, in handle_write_event > File "asyncore_client.py", line 24, in handle_connect > File "asyncore_client.py", line 9, in __init__ > File "asyncore.py", line 257, in create_socket > File "socket.py", line 156, in __init__ > socket.error: (24, 'Too many open files') > > I just wanna know: is there a way to know how many connections can > accept a 'binded' socket BEFORE getting such error? Maybe > socket.SOMAXCONN could help me?
Here you get out of file descriptors, I dont think SOMAXCONN would help. Under Linux (maybe Unix), there is ulimit -n nnn to setup the maximum number of files descriptors. I don't know its upper limit (maybe a kernel compile time information). -- http://mail.python.org/mailman/listinfo/python-list