http协议(应用层协议):无状态协议,协议本身不保存用户的任何信息,每次请求都是独立的。
http/1.0
缺点:短连接,每次请求都需要2个RTT的开销(每次都需要通过三次握手建立连接)
(RTT:请求往返所需要的时间,从请求开始发送到接收到接收端的确认信息为止)
独立的请求可以减小服务器的压力,服务器负担重,但浏览器可以同时并行多个tcp连接,每个连接处理一个请求,可以缩短响应时间,提高效率。
http/1.1
- 长连接。发送请求一段时间内获得持续连接,之后的请求可以通过该连接持续发送,并不局限于同一个页面,只要是对同一服务器请求即可。
- http/1.1默认使用流水线(管道)方式:在接受到响应报文之前可持续发送请求报文,所有的请求只用一个RTT。
- 非流水线方式:只要有接收到前一个报文的响应报文才会发送下一个请求报文,每一个请求都要一个RTT。
- post方法不支持流水线(如刷新页面就会被提示重定向),get方法支持流水线方式。
http/1.1在Request消息中比http/1.0多了一个host域。