《HTTP2基础教程》笔记
HTTP/1问题
队头阻塞
低效TCP
- 慢启动
- 拥塞避免阶段
臃肿头部
受限的优先级
- 高优先级无法插队
第三方资源
- h2也无法很好解决
web性能优化
DNS查询优化
- dns-prefetch
TCP连接优化
- preconnect
避免重定向
- CDN/服务器内部重定向
缓存
- 客户端缓存
- 边缘缓存
资源压缩
避免css/js阻塞
图片优化
h2优化的错误方法
- 精灵图/资源合并
- 域名拆分
- 禁用cookie
HTTP/2协议
二进制协议
- 帧结构
头部压缩
- CRIME漏洞
- 添加数据,gzip压缩后,如果大小变化不对,说明添加的数据与原有数据有重复
多路复用
- 流概念
流量控制
- HTTP2层流控窗口
优先级
- 依赖关系
- 权重
服务端推送
性能指标
TTFB 首字节时间
PLT页面加载时间
RTT往返时延
RUM 用户监控
其他
大量小资源场景:h2比h1更容易受到丢包影响
- h1建立了多个连接,相对于TCP的初始拥塞窗口更大。
增加带宽不会减少时延
减少RTT对PLT一定有帮助
XMind: ZEN - Trial Version