简单描述一下Http的连接流程:经过tcp三次握手之后,客户端和服务端建立连接,然后服务端解析客户端的请求的Header和内容部分(post请求参数放在内容行),然后返回结果,如果有多次请求,就重复上面过程。已有的优化策略有哪些。
1.优化tcp连接
由于每次请求都会进行tcp三次握手,因此便有了长连接,Http 1.1之后默认打开长连接,这样就不必每次向服务器请求的时候,进行重新连接。
2.优化资源请求时间
我们打开一个页面的时候,会加载多个资源,那么每次请求一个资源,等待返回结果之后,再请求下一个资源,这样等整个资源请求完,由于网络请求存在时延,如果有N个资源的话,需要N个RTT(round trip time)的时间才能请求完成, 那么是否可以在一次请求(一个RTT时间)的时候,将结果都返回出来呢?这就是pipeline技术。
3.并行连接
从上面的pipeline技术可以看到,一个RTT的时间就可以返回所有的结果,但是为什么这个功能默认是