Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux Can';不要打开超过28234个插座?_Linux_Networking - Fatal编程技术网

Linux Can';不要打开超过28234个插座?

Linux Can';不要打开超过28234个插座?,linux,networking,Linux,Networking,我正在编写一个网络服务,我的目标是高并发性。出于某种原因,当我尝试连接到第28234个插座时,我得到: [Errno 99] Cannot assign requested address 客户端用python编写,服务器端用haskell编写。我在ubuntu 11.04上运行这个,并且: $ ulimit -n 1048576 如何克服此限制?中设置的临时端口范围: /proc/sys/net/ipv4/ip_local_port_range 阻止您创建更多连接。通常的解决方法是在主机

我正在编写一个网络服务,我的目标是高并发性。出于某种原因,当我尝试连接到第28234个插座时,我得到:

[Errno 99] Cannot assign requested address
客户端用python编写,服务器端用haskell编写。我在ubuntu 11.04上运行这个,并且:

$ ulimit -n
1048576

如何克服此限制?

中设置的临时端口范围:

/proc/sys/net/ipv4/ip_local_port_range

阻止您创建更多连接。

通常的解决方法是在主机上创建额外的IP地址,根据dan_waterworth的回答,每个IP将为您获得额外的临时端口范围,只要您将套接字绑定到接口

Microsoft在此讨论此主题:


出于好奇,您为什么需要这么多插座?您正在尝试同时收听28000多个插座?您的端口将用完。
SOCK_STREAM
SOCK_DGRAM
?您正在尝试创建30000个从同一系统连接的客户端吗?你认为这是一个现实的用例吗?@ IKKE,我要创建一个高性能的WebSoCulver服务器。斯文,这可能就是答案。多谢各位@尼尔,事实上,我认为自己主要是一个C程序员,我很理解高并发性的问题。以后请不要这么放肆@涡轮J,短袜流@尼莫,不,这是为了进行基准测试,我没有100000台备用机器可以用来做测试。这有点奇怪,因为
28232<2828284
@Steve-o,最后一台失败了,范围可能包括在内。哦,当你写84和34时,这是一个问题的输入错误。