当前位置: 技术问答>linux和unix
我的客户端为单进程。会迭代生成4000个连接,但成功连到服务器上的总是不超过3973个。
来源: 互联网 发布时间:2016-03-08
本文导语: 程序运行环境是Linux 2.6内核。 我的客户端为单进程。会迭代生成4000个连接,但成功连到服务器上的总是不超过3973个。 服务器端使用了epoll模型。为单进程程序。 超过3973个连接后,客户端提示: connect: Cannot assign requested ...
程序运行环境是Linux 2.6内核。
我的客户端为单进程。会迭代生成4000个连接,但成功连到服务器上的总是不超过3973个。
服务器端使用了epoll模型。为单进程程序。
超过3973个连接后,客户端提示:
connect: Cannot assign requested address
我已修改了单个进程可打开的最大文件描述符数为32768:
buildserver-linux:/home/wqh/ClientTestRoutine# cat /proc/sys/fs/file-max
32768
问题出在什么地方呢?令人匪夷所思。
|
和客户端无关,查找server端的问题吧:
connect()/sendto() an address or port that is not valid for a remote machine
connect()/sendto() an address or port that is not valid for a remote machine
|
ulimit -a看看
|
看看有没有socket的个数限制。
|
google一下?