第1页
秒开
----安全,快速,可靠
许霞 | 百度运维部 xuxia@baidu.com
第2页
个人简介
• 浙江大学
• 08年加入百度运维部 • 搜索架构 • 接入 • 可用性 • 搜索性能
第3页
目录
速度的度量
速度的优化 接入质量优化 云端服务优化 前端渲染优化
一些无线特点
第4页
速度的度量
第5页
数据收集 - 监测方法
样本规模 准确性 竞品监测 指标覆盖 成本
客户端
一般 较好 可以 比较固定 中
JS埋点
大
准确 无法覆盖 可以定制
低
主指标竞品 监测
自身细指标 监测
第三方监测
一般 一般 可以定制 固定 高
竞品补充监 测
第6页
数据收集 - 优化的意义
第7页
如何做优化
第8页
如何做优化
接入质量提升 后端处理优化 前端渲染优化
搜索引擎的特点 full stack
第9页
如何做优化
接入质量提升
RTT 传输效率
后端处理优化
前端渲染优化
第10页
接入质量提升 | RTT
降低, 减少
识别 •Localdns , clientIP , 真实信息 •IP的归属 •速度优先?
分配 •区域接入 •BGP •动态代理
第11页
接入质量提升 | 传输
TCP - INIT_CWND - Tail loss probe - TCP_FASTOPEN - reno,cubic, westwood
Init cwnd =1
SPDY
NonTCP? QUIC?
Init cwnd =3
Init cwnd =10
第12页
后端处理优化
Cache提升
缓存
主动更新机制
主动预测
检索优化
模块层 架构层 物理层
代码优化 部署与调度 机型、新硬件
第13页
后端处理优化 | 缓存
进入、淘汰 …
主动更新 - Cache VS 时效性
主动预充 - 实时 - 非实时
<50ms >200ms
第14页
后端处理优化 | 检索
高主频 VS 高吞吐
部署调度合理性 - 快速重试 - 主动容错
fronten d
ranking
X
index
第15页
前端渲染优化
Balabala … Chunked 预取
第16页
关于无线
第17页
关于无线 | 控制请求头部大小
Mac access control
MTU
第18页
关于无线 | 控制请求头部大小
MTU & MAC(MAC access control) •MAC: 帧长度不受限
运营商会根据基站负载调整调度参数
实践 •100byte ~ 20ms
(cookie/url/refer…)
•我们的成果:100ms+
并不是越小越好 •微信
第19页
关于无线 | 连接的维持
RRC
TCP: Keep-alive
摘自velocity2012
第20页
关于无线 | 连接的维持
TCP: keep-alive •无需在终端做(PDN/GGSN,ex: facebook) •浏览器代理
同时,由于RRC的存在… •终端与基站的连接成本很高(运营商看的是吞吐)
我们的尝试 •针对部分网络制式进行Dummy Request •200ms+ VS 电池
第21页
关于无线 | 大数据的使用
无线与TCP的恩怨 •丢包 VS RTT随机波动
大数据 •历史数据
初始窗口/慢启动节奏/丢包识别…
•实时数据 设备识别与适配 RTT识别与适配(HTTPS/CONTENT) …
第22页
究竟能有多快
第23页
究竟能有多快
ABF: Above the fold
Baidu : 80%<1秒