关于 长连接 的 3点 疑问

[复制链接]
查看11 | 回复2 | 2021-1-27 06:48:01 | 显示全部楼层 |阅读模式
1,长连接是不是保持tcp连接不断开,网上有人说是保持http连接不断开,但是http只是应用层协议,和连接的建立没关系吧
2,长连接实现的原理是什么?一般情况下当客户端将服务器发送的数据读完之后,就会关闭tcp连接呀。
3,采用长连接的方式,是不是意味着100万的用户同时在线,就有100条连接一直存在,不会关闭,那么上限是多少?这么多连接?不关闭,会不会有什么?影响呢?
分 -->
回复

使用道具 举报

千问 | 2021-1-27 06:48:01 | 显示全部楼层
我觉得这个应该去网络通信专区问........
回复

使用道具 举报

千问 | 2021-1-27 06:48:01 | 显示全部楼层
长连接就是连接两端都专门给对方保留一个端口,不断监听对方是否发送消息。tcp是底层的协议,http确实是应用层高协议,是基于tcp的。
如果你懂http的实现原理,你就能懂tcp实现原理了。http通过应用逻辑,在通信时建立一个连接,通信完毕后将连接主动终止,也就是说,http的服务端并不会一直为一个客户端保留端口监听。
至于100万同时在线的问题,要看你的设备性能了,还有端口数量,带宽。
tcp有一点不好的地方就是,很有可能,连接的一端已经释放端口而另一方什么都不知道,还在同一个端口上监听那个断开的对方,这会造成资源浪费,所以tcp的使用,一般都伴随着简单的协议开发,常见的就是心跳机制,tcp双方保持固定间隔发送心跳,如果一段时间没有收到,则会认为对方已经断开,那本地以要释放端口,等待和别人建立另一个连接
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行