http 协议介绍:

http 协议是请求/响应范式的, 每一个 http 响应都是由一个对应的 http 请求产生的; http 协议是无状态的, 多个 http 请求之间是没有关系的.

http 长连接:

目前 http 协议普遍使用的是 1.1 版本, 之前有个 1.0 版本, 两者之间的一个区别是 1.1 支持 http 长连接,

或者叫持久连接.1.0 不支持 http 长连接, 每次一个 http 请求响应后都关闭 tcp 连接, 下个 http 请求会重新建立 tcp 连接.

所谓 http 长连接, 就是多个 http 请求共用一个 tcp 连接; 这样可以减少多次临近 http 请求导致 tcp 建立关闭所产生的时间消耗. http 1.1 中在请求头和相应头中用 connection字段标识是否是 http 长连接, connection:

keep-alive, 表明是 http 长连接; connection:closed, 表明服务器关闭 tcp 连接

与 connection 对应的一个字段是 keep-live, http 响应头中出现, 他的格式是 timeout=30, max=5, timeout

是两次 http 请求保持的时间(s), , max 是这个 tcp 连接最多为几个 http 请求重用

http 长轮询:

http 长轮询是服务器收到请求后如果有数据, 立刻响应请求; 如果没有数据就会 hold 一段时间, 这段时间内如果有数据立刻响应请求; 如果时间到了还没有数据, 则响应 http 请求;浏览器受到 http 响应后立在发送一个同样 http 请求查询是否有数据;

http 长轮询的局限:浏览器端对统一服务器同时 http 连接有最大限制, 最好同一用户只存在一个长轮询;

服务器端没有数据 hold 住连接时会造成浪费, 容易产生服务器瓶颈;

http 短轮询:

http端轮询是服务器收到请求不管是否有数据都直接响应 http 请求; 浏览器受到 http 响应隔一段时间在发送同样的 http 请求查询是否有数据;

http 短轮询的局限是实时性低;

两者相同点:

可以看出 http 长轮询和 http 短轮询的都会 hold 一段时间;

两者不同点

间隔发生在服务端还是浏览器端: http 长轮询在服务端会 hold 一段时间, http 短轮询在浏览器端 “hold” 一段时间;

应用:

长轮询一般用在 web im, im 实时性要求高, http 长轮询的控制权一直在服务器端, 而数据是在服务器端的, 因此实时性高;

像新浪微薄的im, 朋友网的 im 以及 webQQ 都是用 http 长轮询实现的;

NodeJS 的异步机制貌似可以很好的处理 http 长轮询导致的服务器瓶颈问题, 这个有待研究.

http 短轮询一般用在实时性要求不高的地方, 比如新浪微薄的未读条数查询就是浏览器端每隔一段时间查询的.

其他:

关于 http 长连接一个误解就是服务器主动推送数据, 这个在 http 协议下是无法实现的, 因为 http 请求/响应范式决定的, http 中服务器返回数据必须要有一个浏览器端的请求对应, 服务器无法主动推送给浏览器数据.

不管 http 长轮询还是 http 短轮询 保证同一个用户在多 tab 下只存在一个定时查询是有好处的, 这可以通过在浏览器端缓存数据解决, 在 http 响应后在浏览器端缓存数据, 并设置一个有效期, 然后在每次发送 http 请求时检查是否有有效数据, 没有则发送请求获取

以上就介绍了http长轮询&短轮询,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

php http长轮询,http长轮询短轮询相关推荐

  1. 长连接、短连接、短轮询、长轮询

    长连接.短连接.短轮询.长轮询 短连接:每次Http请求都会建立Tcp连接,管理容易 长连接:只需要建立一次Tcp连接,以后Http请求重复使用同一个Tcp连接,管理难 短轮询:重复发送Http请求, ...

  2. 转---谈谈HTTP协议中的短轮询、长轮询、长连接和短连接

    作者:伯乐在线专栏作者 - 左潇龙 http://web.jobbole.com/85541/ 如有好文章投稿,请点击 → 这里了解详情 引言 最近刚到公司不到一个月,正处于熟悉项目和源码的阶段,因此 ...

  3. tcp协议中的长连接和短连接服务器,谈谈HTTP协议中的短轮询、长轮询、长连接和短链接...

    undefined 在之前总结 WebSocket 的时候就已经提到过短长轮询了~~今天看公众号文章,又把长短连接引进来一起分析.感觉这种总结很棒,那么我们一起看看呗 长短连接 听说长短连接的话,应该 ...

  4. http长/短轮询和WebSocket 的介绍和比较

    [1]http协议介绍 1)介绍:http协议是请求/响应范式的,每个http 响应都对应一个 http 请求,http协议是无状态的,多个http请求之间是没有关系的: 2)http协议的被动性:在 ...

  5. 轮询、长轮询与Web Socket的前端实现

    Web Socket 应用场景:实现即时通讯:如股票交易行情分析.聊天室.在线游戏等,替代轮询和长轮询 轮询 轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发出HTTP request,然后由 ...

  6. 谈谈HTTP协议中的短轮询、长轮询、长连接和短连接

    来源:伯乐在线专栏作者 - 左潇龙 链接:http://web.jobbole.com/85541/ 引言 最近刚到公司不到一个月,正处于熟悉项目和源码的阶段,因此最近经常会看一些源码.在研究一个项目 ...

  7. 误人子弟的网络,谈谈HTTP协议中的短轮询、长轮询、长连接和短连接

    引言 最近刚到公司不到一个月,正处于熟悉项目和源码的阶段,因此最近经常会看一些源码.在研究一个项目的时候,源码里面用到了HTTP的长轮询.由于之前没太接触过,因此LZ便趁着这个机会,好好了解了一下HT ...

  8. 轮询,长连接,长轮询原理及实现方式,优缺点

    轮询,长连接,长轮询原理及实现方式,优缺点 在前一篇文章中我们了解了webSocket,就很有必要了解一点web通信技术.常用的轮询,长连接原理及实现方法. 通常的web应用的交互过程是:客户端发送请 ...

  9. 长轮询和短轮询的区别

    http 协议介绍: http 协议是请求/响应范式的, 每一个 http 响应都是由一个对应的 http 请求产生的; http 协议是无状态的,多个 http 请求之间是没有关系的. http 长 ...

  10. 转载的--------------------HTTP协议中的短轮询、长轮询、长连接和短连接

    最近刚到公司不到一个月,正处于熟悉项目和源码的阶段,因此最近经常会看一些源码.在研究一个项目的时候,源码里面用到了HTTP的长轮询.由于之前没太接触过,因此便趁着这个机会,好好了解了一下HTTP的长长 ...

最新文章

  1. 第十篇学会编写python代码_Python之路,第十篇:Python入门与基础10
  2. AOP日志-域对象创建与基本操作介绍
  3. js时间格式化通用方法
  4. Java实现网页爬虫
  5. bzoj 1119 [POI2009] SLO bzoj 1697 牛排序 —— 置换+贪心
  6. matplotlib 中设置图形大小
  7. 学堂云3大学计算机基础答案,学堂云3答案查询公众号
  8. 三角波的傅里叶变换对_傅里叶变换推导详解
  9. 计算机音乐数字乐谱核爆神曲,核爆神曲——aLIEz钢琴谱钢琴简谱 数字谱 钢琴双手简谱.pdf...
  10. MongoDB实战-生产环境中分片的部署与配置
  11. python中eval函数的用法
  12. 系统上电后 bootloader的执行流程
  13. 对于VmWare WorkStation在桥接模式下与虚拟机互ping不通问题解决方案
  14. 旋转矩阵列向量的物理含义
  15. OSChina 周三乱弹 —— 以后面试可以说自己精通B站源码了吧
  16. Android客户端 和 pc服务器 建立socket连接并发送数据
  17. 2021年化工自动化控制仪表及化工自动化控制仪表模拟考试
  18. python中文文档-Python语言、主要工具与类库中文文档
  19. Java基本概念(世外隐者——隐居深山的“关键字”)
  20. 多态是什么 父类如何调用子类的方法(美团面试)

热门文章

  1. 【雪野实训记录】Oracle宾馆管理系统-L2综合项目案例
  2. 达索系统仿真Simulia——BMW宝马案例学习 | 达索系统百世慧
  3. JavaScript高级第2天:定义函数的三种方式、函数的原型链结构、完整原型链、作用域以及作用域链、函数的四种调用模式、闭包、计数器、斐波那契数列优化、三种继承方式
  4. 原创超简单代码(1.27.50)
  5. 职场上,这些不为人知的潜规则,你知道吗?
  6. Python基础总结及数据分析代码记录(一、环境准备及数据结构;二、数据采集与操作)
  7. Nginx限制或允许IP或IP段访问
  8. 微信支付sdk详细使用
  9. jQuery名字滚动老虎机抽奖
  10. 15个常用excel函数公式_EXCEL函数公式小妙招,点滴积累效率高