八股示例:从输入 URL 到页面展示发生了什么
这是一道经典八股题的答题框架示例。
一、网络部分
- DNS 解析:浏览器缓存 → 系统缓存 → hosts → 递归/迭代查询
- TCP 连接:三次握手(为什么是三次?防止失效的连接请求突然到达)
- TLS 握手(HTTPS):协商加密套件、交换证书、生成会话密钥
- 发送 HTTP 请求:方法、头部、缓存协商(强缓存/协商缓存)
二、渲染部分
- 解析 HTML 构建 DOM 树,解析 CSS 构建 CSSOM
- 合成渲染树,计算布局(回流),绘制(重绘)
- JS 执行会阻塞解析 ——
defer/async的区别
答题技巧
先给总纲(两条线),再按顺序展开;被追问时往深处挖(如 HTTP/2 多路复用、QUIC)。