1.HTTP协议的五大特点
1)支持客户/服务器模式
2)简单快速
3)灵活
4)无连接
每次连接只处理一个请求,服务器处理完客户的请求,并受到客户的应答后,断开连接。
5)无状态
协议不会记录服务器客户端状态。

2.保持HTTP连接状态的两种方式
1)Cookie
在访问统一网站时,可以将信息写入cookie,方便在不同的页面间提取信息。

2)Session
Session保存在服务器上,同时将标识Session的SessionId传递给客户端浏览器,保存在cookie中,浏览器关闭后,这个cookie就会被清掉。

浏览器每次请求都会额外加上这个参数值,服务器根据这个SessionId,就能取得客户端的数据信息。

3.什么是HTTP长连接,短连接
HTTP的长连接,短连接本质上是TCP长连接,短连接。

在HTTP/1.0中,默认使用的是短连接。
即浏览器和服务器每进行一次HTTP操作,就建立一次连接,任务结束就中断连接。这样,如果一个网页中包含其他的web资源,如JavaScript文件,图像文件,CSS文件等,都需要建立连接。

从HTTP/1.1起,默认使用长连接。我们可以看到响应头有这样一行代码:Connection:keep-alive
当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,如果客户端再次访问这个服务器上的网页,会继续使用这条已经建立的连接。

4.长连接短连接操作过程
短连接的操作步骤是:
建立连接——数据传输——关闭连接...建立连接——数据传输——关闭连接
长连接的操作步骤是:
建立连接——数据传输...(保持连接)...数据传输——关闭连接

5.长连接短连接的优缺点
长连接可以省去较多的TCP建立和关闭的操作,减少浪费,节约时间。对于频繁请求资源的客户来说,较适用长连接。
Client与server之间的连接如果一直不关闭的话,会存在一个问题,随着客户端连接越来越多,server早晚有扛不住的时候,这时候server端需要采取一些策略,如关闭长时间没有读写事件的连接;限制每个客户端的最大长连接数。
短连接对服务器来说管理较为简单,存在的连接都是有用的连接。但如果客户请求频繁,将在TCP的建立和关闭上浪费时间和带宽。

6.长连接短连接使用场合
长连接多用于操作频繁,点对点的通讯,而且连接数不能太多情况。如数据库的连接。
而像web网站的http服务一般用短连接,因为长连接对于服务端来说会耗费一定的资源,而像web网站这么频繁的成千上万甚至上亿客户端的连接用短连接更省资源,如果用长连接,而且同时有成千上万的用户。如果每个用户都占用一个连接的话,那可想而知吧。所以并发量大,但每个用户无需频繁操作的情况下用短连接好。

HTTP长连接和短连接的更多相关文章

  1. TCP同步与异步,长连接与短连接【转载】

    原文地址:TCP同步与异步,长连接与短连接作者:1984346023 [转载说明:http://zjj1211.blog.51cto.com/1812544/373896   这是今天看到的一篇讲到T ...

  2. HTTP的长连接和短连接

        本文总结&分享网络编程中涉及的长连接.短连接概念.     关键字:Keep-Alive,并发连接数限制,TCP,HTTP 一.什么是长连接 HTTP1.1规定了默认保持长连接(HTT ...

  3. HTTP的长连接和短连接——Node上的测试

        本文主要从实践角度介绍长.短连接在TCP层面的表现,借助Node.JS搭建后台服务,使用WinHTTP.Ajax做客户端请求测试,最后简单涉及WebSocket.     关键字:长连接.短连 ...

  4. (转)HTTP 长连接和短连接

    1. HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接.HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议.IP协议主要解决网络路由和寻址问 ...

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

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

  6. Http 和TCP的关系,TCP长连接和短连接有什么区别?

    HTTP 协议即超文本传送协议(Hypertext Transfer Protocol ),是Web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在TCP协议之上的一种应用.由于HTTP在 ...

  7. 【转】HTTP中的长连接和短连接分析

    1. HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接.HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议.IP协议主要解决网络路由和寻址问 ...

  8. HTTP 长连接和短连接

    1. HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接.HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议.IP协议主要解决网络路由和寻址问 ...

  9. (转)HTTP长连接和短连接

    1. HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接.HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议.IP协议主要解决网络路由和寻址问 ...

随机推荐

  1. C语言程序设计第十一次作业

    同学们,一晃一个学期就过去了,第一节课时,我曾做过一个调查,没有一个同学在中学阶段接触过程序设计,也就是说,那时,大家都是零基础,或许只是听说过"C语言"这个词,但其他便一无所知了 ...

  2. Page事件执行顺序

    Page 执行中将按照如下顺序激活事件: Page.PreInit Page.Init Page.InitComplite Page.PreLoad Page.Load Page.LoadComple ...

  3. Spring事务传播机制&隔离级别

    一.Propagation (事务的传播属性) Propagation : key属性确定代理应该给哪个方法增加事务行为.这样的属性最重要的部份是传播行为.有以下选项可供使用:PROPAGATION_ ...

  4. app的自动更新(调用DownloadManager)

    具体思路为:调用接口与服务器版本对比,当服务器版本号大于本地的,调用DownloadManager进行下载,之前也试过很多方法,但是兼容性都不是很好,还有一点要注意的是,在这里我并没有设置固定的下载路 ...

  5. Codeforces 570C 贪心

    题目:http://codeforces.com/contest/570/problem/C 题意:给你一个字符串,由‘.’和小写字母组成.把两个相邻的‘.’替换成一个‘.’,算一次变换.现在给你一些 ...

  6. Unity jounal 2016-3-3

    1. Project organization: 2.prefab Important part of the project, which seperate and organize the scr ...

  7. 10大白帽黑客专用的 Linux 操作系统

    原文出处: Irshad Pathoor   译文出处:Linux中国   欢迎分享原创到伯乐头条 今天让我们来介绍十个黑客专用的操作系统,它们被白帽黑客用作渗透测试的工具.这里我把 Kali Lin ...

  8. 类A have-a 类B,类B访问类A public 成员

    需求是类A中包含类B,而类B又需要访问类A的public属性的成员. 首先类B中要访问类A的属性,那么对于类B而言,我们必须要知道有类A这个类,所以在类B的具体实现之前我们需要前向声明类A. 对于类A ...

  9. git常见错误

    一.如果输: $ git remote add origin git@github.com:djqiang(github帐号名)/gitdemo(项目名).git         提示出错信息:fat ...

  10. sql2000不能远程注册服务器上sql2000的解决方法

    1. 开始——cmd——telnet Ip 1433  看1433端口是否打开 2.在服务器上查询分析器中输入select @@version查看sql2000的版本,版本号在8.0.2039以下的都 ...