HPSocket4C.dll 发送卡主了

发布于 2021-11-26 17:01:43 字数 204 浏览 860 评论 11

服务器配置:4核8G 2003系统


宽带:100M双线


服务器类型:TCP


在线人数:2000


主要用途是每2秒群发给2000个在线用户 服务器在线人数在500的时候还很正常,但是人数一多就出现发送直接不返回了 程序保证没问题,我知道怪兽肯定也没问题 就是不知道是不是设置问题了

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(11

哑剧 2021-11-30 14:52:27

是否在通信线程中处理过多业务逻辑,导致
通信线程被占满阻塞?。

柒夜笙歌凉 2021-11-30 14:52:16

嗯,解决了就好,但默认就是“SP_PACK”(打包策略)啊

少女情怀诗 2021-11-30 14:52:02

估计你的问题是:

你用的timer吧,要置忙标志,本次过程没运行完时,禁止下次timer启动此过程

策马西风 2021-11-30 14:52:02

问题已解决,分享下

其实只要设置服务器发送方式为SP_SAFE(安全策略)就行了,以前我设置的是SP_DIRECT(直接策略)

(发送策略通过 SetSendPolicy(enSendPolicy) 方法进行设置) 

 SP_PACK :打包策略(默认) 

尽量把多个发送操作的数据组合在一起发送,增加传输效率 
 SP_SAFE :安全策略 
尽量把多个发送操作的数据组合在一起发送,并尽量避免缓冲区溢出 
 SP_DIRECT :直接策略 
对每一个发送操作都直接投递,适用于负载不高但要求实时性较高的场合

带上头具痛哭 2021-11-30 14:51:41

但我只是测试了2200多个客户端同时连接,没发送

输什么也不输骨气 2021-11-30 14:50:53

这个问题的确很是苦恼。。。

坐在坟头思考人生 2021-11-30 14:50:30

不是卡,是调用发送函数 直接导致不返回了 几遍2个小时后也不会返回 哎 也不知道哪出了问题

你曾走过我的故事 2021-11-30 14:50:29

对了 你一共设置了哪几个参数?能否告知我下?万分感谢!

冷清清 2021-11-30 11:19:36

我测试了2200多个连接,没问题,不卡

柳若烟 2021-11-30 05:09:39

额,理论上支持上万用户的 但是我的实际应用不行(我只是说我)

醉生梦死 2021-11-29 09:26:16

啊,才2000个就卡住了?想测试数万用户连接行不行呢,但我这服务器没法测试超多连接的问题,因为没那么多客户端啊。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文