1. HTTP是如何使用TCP连接
2. TCP连接的时延,瓶颈以及存在障碍
HTTP事务时延:
1. DNS解析:浏览器存储上次解析信息
2.TCP连接建立:延迟确认
优点:确认帧捎带输出数据(通常在100-200毫秒)
难点:服务器处理降低了捎带信息的可能;
3.HTTP报文传输后服务器处理,以及回传时间;
TCP慢启动:如果发送大量分组TCP报文,第一次发1组,然后2,然后4;解决办法:重现现存连接的工具
禁用Nagle算法(设置TCP_NODELAY): 提高最后一组分帧发送报文; 需要注意:一定要确保向TCP写入大块数据;
TIME_WAIT端口耗尽:这个问题一般会发生在性能测试,只有少数客户机
3.HTTP的优化,包括并行连接,keep-alive和管道化;
1)并行连接:不一定更改,但会让用户感觉快
2)持久连接:1.0 持久连接示例,默认不支持keep-alive,容易参数哑代理
HTTP1.1 默认支持持久连接,
HTTP/ 1. 1 客户 端 假定 在 收到 响应 后, 除非 响应 中 包含 了 Connection: close 首部, 不然 HTTP/ 1. 1 连接 就 仍 维持 在打 开 状态。 但是, 客户 端 和 服务器 仍然 可以 随时 关闭 空闲 的 连接。 不 发送 Connection: close 并不 意味着 服务器 承诺 永远 将 连接 保持 在打 开 状态。
管道化pipeline连接: