Socket端口号上限测试问题

Win10系统自行将程序暂停,并产生小绿叶后将程序强制关闭.

Socket模拟高并发

今天在测试Socket服务端高并发处理性能时,我做了一个客户端模拟出数十万个客户端在随机情况下同时连接断开,并收发消息。
在程序运行时突然发现当客户端连接数目达到到70000左右时,Win10系统突然将程序暂停.
在这里插入图片描述
如图所示,再经过一段时间后任务管理器进程后方出现小绿叶的图标.
在这里插入图片描述
之后程序被强制结束.
开始怀疑是否与Win10系统开启的节能模式有关,于是切换到了高性能模式,发现情况还是相同。
后来在看Socket网络编程一些资料时
https://blog.csdn.net/qq_35393693/article/details/80280910
借鉴此篇,突然发现在做客户端模拟时忽略了端口数量的情况,一台电脑最多支持65536个端口,客户端在连接数量超过端口上限时将会持续不断的进行连接,而我却模拟了数十万个客户端,这些并发处理后超过端口上限的部分服务端将无法重新再分配端口,导致客户端持续不断进行连接,造成程序负载。
Win10在检测到内存被无意义占用时,将异常程序暂停,并关闭。
将客户端的异常处理做好,检测到队列满了以后停止连接即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值