此时查看任务管理器,服务端进程的句柄数量为9999,但内存和CPU占用都微乎其微。我想可能是Windows限制了单个进程的最大句柄数量,导致只能接受3700个连接。有什么办法扩大这一数字吗?
调试发现,IOCP每增加一个连接,要耗费三个句柄。查了一些资料,Windows确实限制单个进程的最大句柄数量。 不知道IIS支持多少同时保持连接的,他怎么做到的。
7 个解决方案
#1
1.什么操作系统?建议使用server版的进行测试,比如Windows 2003 Enterprise + SP2
2.操作系统当中安装了什么防病毒软件,比如象江民之类的就会锁连接数;
3.最大连接数可以达到10万的理论值,实测可以达到5~6万
2.操作系统当中安装了什么防病毒软件,比如象江民之类的就会锁连接数;
3.最大连接数可以达到10万的理论值,实测可以达到5~6万
#2
我用的是2003Server 服务器很干净,没有装任何东西。连接数每增加一个在任务管理器能看到进程增加了3个句柄,句柄打到1万的时候就无法建立新连接了。ACCEPTEX函数不再返回。 大概也就是3300多链接就无法接受新的连接了。
很是郁闷。
很是郁闷。
#3
晕,不知道你们怎么搞的我测试的话压力单连接可以到2-3W.带宽100M全满
#4
"3.最大连接数可以达到10万的理论值,实测可以达到5~6万"
能有10W? port最大也就是65535你怎么来10W
能有10W? port最大也就是65535你怎么来10W
#5
accept的连接,只是一个session,受限的是内存,与之相关的是socket描述符,而不是port,实际上它是以ClientIP+ClientPort+ServerIP+ServerPort作为唯一性确定的.
#6
不知道测试环境是如何的,是否是因为客户端受到限制.每一个系统连出的连接数确实是相当有限的,在这种情况下,只能增加机器,或者修改注册当中的设置.最大连出连接数可以达到60000左右.
#7
请搞到7W连接客户端给我看看
#1
1.什么操作系统?建议使用server版的进行测试,比如Windows 2003 Enterprise + SP2
2.操作系统当中安装了什么防病毒软件,比如象江民之类的就会锁连接数;
3.最大连接数可以达到10万的理论值,实测可以达到5~6万
2.操作系统当中安装了什么防病毒软件,比如象江民之类的就会锁连接数;
3.最大连接数可以达到10万的理论值,实测可以达到5~6万
#2
我用的是2003Server 服务器很干净,没有装任何东西。连接数每增加一个在任务管理器能看到进程增加了3个句柄,句柄打到1万的时候就无法建立新连接了。ACCEPTEX函数不再返回。 大概也就是3300多链接就无法接受新的连接了。
很是郁闷。
很是郁闷。
#3
晕,不知道你们怎么搞的我测试的话压力单连接可以到2-3W.带宽100M全满
#4
"3.最大连接数可以达到10万的理论值,实测可以达到5~6万"
能有10W? port最大也就是65535你怎么来10W
能有10W? port最大也就是65535你怎么来10W
#5
accept的连接,只是一个session,受限的是内存,与之相关的是socket描述符,而不是port,实际上它是以ClientIP+ClientPort+ServerIP+ServerPort作为唯一性确定的.
#6
不知道测试环境是如何的,是否是因为客户端受到限制.每一个系统连出的连接数确实是相当有限的,在这种情况下,只能增加机器,或者修改注册当中的设置.最大连出连接数可以达到60000左右.
#7
请搞到7W连接客户端给我看看