http的长连接、短连接、长轮询、短轮询

这篇具有很好参考价值的文章主要介绍了http的长连接、短连接、长轮询、短轮询。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

长连接和短链接

  • 我们都知道,HTTP1.1是可以支持长连接的,并且默认就是长连接。只需要在请求头设置Connection:keep-alive。长连接要想起作用,客户端也需要设置Connection:keep-alive
  • 长连接,短连接是针对TCP来说的,因为TCP才是负责数据传输的协议,长连接保证的是可以复用TCP连接。
  • 这里就有个问题,对于博客这种请求数小的页面,我们为什么还要使用长连接呢,这不是完全在浪费资源吗?
    • 刚才说了长短连接是针对TCP来讲的,长连接是复用TCP进行传输,我们设置长连接本质上是为了每次在请求和响应的过程不用三次握手四次挥手的过程
    • 我们每次请求网站,都会有多次HTTP请求(css,html,js,图片等各种文件),使用长连接,多个HTTP请求可以复用同一个TCP连接,这就节省了很多TCP连接建立和断开的消耗。
  • 长连接并不是永久连接的。如果一段时间内(具体的时间长短,是可以在header当中进行设置的,也就是所谓的超时时间),这个连接没有HTTP请求发出的话,那么这个长连接就会被断掉。

长轮询和短轮询

  • 对于实时场景,长短轮询都有不同的解决方式。比如网购时的库存,需要实时刷新,应该如何处理呢?
  • 短轮询,客户端发出请求,服务器检查库存有没有更新,如果更新,就返回更新后的数据;如果没有更新,立即返回没有更新,浏览器再次发出请求。
    • 缺点: 这样客户端和服务器的压力都很大(如果有10000个人在库存页面,服务器将一直处理这10000个请求),同时也很浪费带宽资源。
    • 短轮询的本质是服务器要立马做出响应。
  • 长轮询。客户端发出请求,服务器检查库存有没有更新,如果更新,就返回更新后的数据;如果没有更新,等待更新后或超时再返回,浏览器再次发出请求。
    • 优点:此时客户端的请求会减少,服务器的压力也会减小
    • 缺点:服务器等待的过程,线程将会阻塞,影响处理其他任务。如果有10000个人在库存页面,服务器一直没有数据更新,将会阻塞10000个线程。
    • 长轮询的本质是服务器需要等待更新或超时再做出响应。

参考文章:https://baijiahao.baidu.com/s?id=1581487891892427649&wfr=spider&for=pc文章来源地址https://www.toymoban.com/news/detail-408144.html

到了这里,关于http的长连接、短连接、长轮询、短轮询的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • AsyncContext优雅实现HTTP长轮询接口

    接到一个需求,实现方案时需要提供一个HTTP接口,接口需要hold住5-8秒,轮询查询数据库,一旦数据库中值有变化,取出变化的值进行处理,处理完成后返回响应。这不就是长轮询吗,如何优雅的实现呢? 在这之前先简单介绍下长连接和短连接 HTTP长链接(Keep-Alive) 概念:

    2024年02月09日
    浏览(38)
  • WebSocket和HTTP协议有什么区别?&& 连环问:WebSocket和HTTP长轮询的区别?

    什么是WebSocket? 答:WebSocket是一种网络传输协议,可在单个TCP连接上进行全双工通信,位于OSI模型的应用层。 特点: 1. TCP连接,与HTTP协议兼容 2. 双向通信,主动推送(服务端向客户端) 3. 无同源限制,协议标识符是ws(加密wss) WebSocket: 1. 支持端对端通讯 2. 可以由client发起

    2024年02月11日
    浏览(44)
  • 前端(二十三)——轮询和长轮询

    😫博主:小猫娃来啦 😫文章核心:实现客户端与服务器实时通信的技术手段 现代Web应用程序对实时通信的需求越来越高,为了满足这种需求,轮询和长轮询成为了常用的技术手段。本文将深入探讨轮询和长轮询的实现原理、优缺点以及使用场景,并提供代码示例,以帮助读

    2024年02月03日
    浏览(54)
  • 轮询和长轮询的讲解和实战

    前言 当今web应用程序对实时通信的需求越来越高,为了满足客户需求,轮询和长轮询成为常用的技术手段。本文将深入讲解一下轮询实现原理、优缺点和使用场景。 一、轮询概念 轮询是一种客户端与服务器之间实时通信的技术手段。 基本原理: 客户端定期发送请求来查询

    2024年01月19日
    浏览(43)
  • HTTP的长连接和短连接详解(HTTP 请求头中的Connection字段)

    参考博客:https://www.cnblogs.com/hls-code/p/15015859.html 前言: HTTP的长连接和短连接本质上是TCP的长连接和短连接。 HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。 IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠地传递数据包,使得网络

    2024年02月15日
    浏览(46)
  • Tomcat长轮询原理与源码解析

    系列文章目录和关于我 最近在看工作使用到的配置中心原理,发现大多数配置中心在推和拉模型上做的选择出奇的一致选择了 基于长轮询的拉模型 基于拉模型的客户端轮询的方案 客户端通过轮询方式发现服务端的配置变更事件。轮询的频率决定了动态配置获取的实时性。

    2023年04月16日
    浏览(43)
  • 长/短 链接/轮询 和websocket

    短连接 : http协议底层基于socket的tcp协议,每次通信都会新建一个TCP连接,即每次请求和响应过程都经历”三次握手-四次挥手“ 优点:方便管理 缺点:频繁的建立和销毁连接占用资源 长连接 : 客户端和服务端之间只有一条TCP通信连接,以后所有的请求都使用这条连接,也

    2024年02月10日
    浏览(32)
  • TCP协议的长连接和短连接详解

    TCP在真正开始进行数据传输之前,Server 和 Client 之间必须建立一个连接。当数据传输完成后,双方不再需要这个连接时,就可以释放这个连接。 TCP连接的建立是通过三次握手,而连接的释放是通过四次挥手。所以说,每个TCP连接的建立和释放都是需要消耗资源和时间成本的。

    2023年04月08日
    浏览(32)
  • rpc项目中的长连接与短连接的思考

    对于rpc项目,在接受大佬指导的时候曾问过对于长连接和短连接是处理处理的,在面试的时候也被问起 socket 是长连接还是短连接,发现自己没有好好思考过这个问题,因此好好总结一下。 前置知识点:rpc基础,tcp基础 类似于http的长连接和短连接的概念,rpc项目中的短连接

    2024年02月08日
    浏览(42)
  • uniapp 存储base64资源为http链接图片

    1. 新建一个base64.js 文件 2. 引入使用

    2024年02月10日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包