社区
其它技术问题
帖子详情
长连接并发到一定量时发现连接大面积断开了?
长寿梦
2011-08-22 07:43:44
问题描述:
客户端发起对服务端的长连接,一旦连接上立即发送大量的数据包。
这样的长连接在并发量达到一定量(巨量,比如1万)的时候,
虽然每次发起连接都能成功,但是总会发现过一会儿有连接断开了
的现象,比如说发起1000个连接,到最后只存在着800个连接。通过测试,
发现这些连接根本不是程序自身关闭的。那么还有200个连接,
是怎么关闭的?
这是否与操作系统相关,服务器的配置相关。
...全文
371
5
打赏
收藏
长连接并发到一定量时发现连接大面积断开了?
问题描述: 客户端发起对服务端的长连接,一旦连接上立即发送大量的数据包。 这样的长连接在并发量达到一定量(巨量,比如1万)的时候, 虽然每次发起连接都能成功,但是总会发现过一会儿有连接断开了 的现象,比如说发起1000个连接,到最后只存在着800个连接。通过测试, 发现这些连接根本不是程序自身关闭的。那么还有200个连接, 是怎么关闭的? 这是否与操作系统相关,服务器的配置相关。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
pathuang68
2011-08-22
打赏
举报
回复
[Quote=引用 4 楼 bokutake 的回复:]
你这简直就是DOS攻击啊。重负荷下以太网性能很低的,从你这个数据量来看,得565Mbps以上吧。你用的什么网络,一般以太网只能30%占用带宽下不出现明显丢包。而且4KB的包应该超过以太网的MTU,会发生IP分组吧,IP碎片重组是很消耗服务器资源的。
如果你的服务器又是Windows之类的网络抗负荷能力比较低的系统,负载平衡和服务器数量不够的话,肯定会出现连接断开。说明连接断开,肯定说明已经超出……
[/Quote]
++
楼主,你也特狠鸟。操作系统关闭一些连接是自我保护的表现。
辰岡墨竹
2011-08-22
打赏
举报
回复
你这简直就是DOS攻击啊。重负荷下以太网性能很低的,从你这个数据量来看,得565Mbps以上吧。你用的什么网络,一般以太网只能30%占用带宽下不出现明显丢包。而且4KB的包应该超过以太网的MTU,会发生IP分组吧,IP碎片重组是很消耗服务器资源的。
如果你的服务器又是Windows之类的网络抗负荷能力比较低的系统,负载平衡和服务器数量不够的话,肯定会出现连接断开。说明连接断开,肯定说明已经超出网络和服务器的负荷了。
长寿梦
2011-08-22
打赏
举报
回复
后来我把长连接控制在500个
发现远程连接就稳定在一个数字497个。
于是我想,连接的并发量,确实与系统的性能,通信量,有关。
值得思考。
长寿梦
2011-08-22
打赏
举报
回复
服务端的连接限制上限为10000.
客户端发起9000个长连接。
这个发起长连接的过程是:
每1ms 发起 2 个连接,每个连接一旦连接成功后,有个定时器,每1秒
发送2个包,每个包4KB。
观察的结果是,
总共使用9000个端口,已经建立8788个远程连接。
过了五分钟,这些数字开始下降到
使用8000多个端口,建立5000多个远程连接
又过了会儿,又在下降。
jixingzhong
2011-08-22
打赏
举报
回复
是否在服务器侧有最大连接数配置?
分布式高
并发
问题
分布式 一、大型网站系统的特点 高
并发
,大流量 高可用 海量数据 用户分布广泛,网络情况复杂 安全环境恶劣 需求快速变更,发布频繁 渐进式发展 二、大型网站架构演化发展历程 初始阶段的网站架构 应用服务和数据服务分离 使用缓存改善网站性能 使用应用服务器集群改善网站的
并发
处理能力 数据库读写分离 使用反向代理和 CDN 加速网站响应 使用分布式文件系统和分布式数据库系统 使用 NoSQL 和搜索引擎 业务拆分 分布式微服务 三、
传输层协议 ——— TCP协议
TCP全称为“传输控制协议(Transmission Control Protocol)”,TCP协议是当今互联网当中使用最为广泛的传输层协议,没有之一。TCP协议被广泛应用,其根本原因就是提供了详尽的可靠性保证,基于TCP的上层应用非常多,比如HTTP、HTTPS、FTP、SSH等,甚至MySQL底层使用的也是TCP。现代的计算机大部分都是基于冯诺依曼体系结构的。 虽然这里的输入设备、输出设备、内存、CPU都在一台机器上,但这几个硬件设备是彼此独立的。如果它们之间要进行数据交互,就必须要想办法进行通信,
SRT互联网传输设备技术分享
SRT互联网传输设备技术分享前 言序 言Chapter 1. 什么是SRT?1.1. SRT 联盟1.2. SRT传输技术1.3. SRT的典型应用模式1.3.1. 点对点单向传输和视频互动1.3.2. 点对多点传输1.3.3. 视频流协议转换与分发Chapter 2. SRT协议解析2.1. SRT工作原理2.2. SRT握手模式2.2.1. Caller模式2.2.2. Listener模式2...
golang大厂面试2
一开始一个项目数据比较多,后来需要分库分表,有什么思路在不停服务的情况下做到平滑切换?wss是基于tcp的,tcp有个半
连接
队列,有没有遇到发了信令但是服务器没收到的情况?实现一个函数,有两个参数分别是升序的整数数组a和b,返回合并后的升序整数数组。理解不理解这些树的构造,是要解决什么问题?处理日志的
时
候如果
发现
突然量变大,该如何扩容让以前堆积的日志可以消耗掉?命令的
时
间差如何保证,命令混乱了怎么办(
时
间戳记录在服务器可以吗?题拍拍主要做拍搜服务的,题拍拍主要做增长,后面会做微服务架构k8s等。
Python 微控制器编程教程(一)
在我们的现代世界,计算机无处不在。它们变得更小,更容易使用,并且更加融入我们的日常生活。几年前,要
连接
互联网和查看电子邮件,你必须坐在一个大型桌面设备前。今天,你可以用一台手掌大小的电脑做同样的事情,把世界上所有的信息都放在你的指尖。科技进步给我们带来了智能手机和平板电脑,也让数十亿人拥有了电脑。然而,这些手持设备并不是唯一存在的计算机。如果我告诉你,与静静地围绕在我们周围的另一种计算设备相比,数十亿部正在使用的智能手机相形见绌,会怎么样?事实上,现在在你的房间里可能有半打或更多这样的设备。
其它技术问题
3,882
社区成员
9,046
社区内容
发帖
与我相关
我的任务
其它技术问题
C/C++ 其它技术问题
复制链接
扫一扫
分享
社区描述
C/C++ 其它技术问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章