短连接、长连接、轮询、长轮询、WebSocket
2019-01-03 09:56:23来源:博客园 阅读 ()
短连接
建立连接——数据传输——关闭连接...建立连接——数据传输——关闭连接
定义:短连接是指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。
应用场景:WEB网站的http服务一般都用短连接(http 1.0一般就指短连接)
优点:1.不需要长期占用通道,对于业务频率不高的场合,能节省通道的使用。
2.短连接对于服务器来说管理较为简单,存在的连接都是有用的连接,不需要额外的控制手段。
缺点:需要在每次发送业务时,都要建立一次连接,在TCP的建立和关闭操作上浪费较多时间和带宽。
长连接
建立连接——数据传输...(保持连接)...数据传输——关闭连接
定义:长连接,指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。使用情景:client向server发起连接,server接受client连接,双方建立连接,client与server完成一次请求后,它们之间的连接并不会主动关闭,后续的读写操作会继续使用这个连接。
应用场景:频繁访问数据库的连接用长连接(多用于操作频繁,点对点的通讯,而且连接数不能太多情况,smtp,pop3,telnet这种就可以认为是长连接)
优点:省去较多的TCP建立和关闭的操作,减少浪费,节约时间。对于频繁请求资源的客户端适合使用长连接。
缺点:client端一般不会主动关闭连接,当client与server之间的连接一直不关闭,随着客户端连接越来越多,server会保持过多连接,增加服务器开销。
轮询
定义:客户端定时向服务器发送Ajax请求,服务器接到请求后马上返回响应信息并关闭连接。
应用场景:适于小型应用。
优点:端程序编写比较容易。
缺点:请求中有大半是无用,浪费带宽和服务器资源。
长轮询
定义:客户端向服务器发送Ajax请求,服务器接到请求后hold住连接,直到有新消息才返回响应信息并关闭连接,客户端处理完响应信息后再向服务器发送新的请求。
应用场景:WebQQ、Hi网页版、Facebook IM。
优点:在无消息的情况下不会频繁的请求。
缺点:服务器hold连接会消耗资源。
WebSocket
定义:
应用场景:社交聊天/会议、弹幕、在线网游、智能家居、实时应用
优点:浏览器不需要不断的向服务器发出请求,能更好的节省服务器资源和带宽,并且能够更实时地进行通讯。
缺点:不兼容低版本的IE。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:判断NaN的真假
- 如何用javascript连接access数据库 2020-03-20
- 使用JS在浏览器中判断当前网络连接状态的几种方法 2020-03-12
- Linux安装node环境 2019-08-14
- 浅析libuv源码-node事件轮询解析(3) 2019-05-13
- 浅析libuv源码-node事件轮询解析(2) 2019-05-08
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash