从浏览器输入url后都经历了什么

1.DNS解析

将url转化为ip地址。先查看本地host文件(专门用来保存常用url和ip地址对应关系的’数据库‘)有没有当前域名对应的ip地址,如果有直接发起请求,如果没有就向本地域名服务器中进行递归查找,如果还是没有就用迭代查找的方式查根域名服务器、顶级域名服务器、权限域名服务器。查找后会返回一个对应的ip地址,存储在本地host域中。如果想要加速查找可以使用CDN换粗服务器。

2.三次握手

客户端与服务端建立连接的过程。客户端首先向服务端发送一个SYN包,进入同步状态;服务端像客户端返回一个SYN+ACK包,进入确认同步状态,表示自己已经收到SYN包了;客户端收到后再像服务端发送一个ACK包表示确认,这样双方就可以建立连接了。

3.发起请求

客户端向服务器发起http请求,服务器返回状态码:

200:返回最新资源

304:客户端缓存可继续使用

4.四次挥手

客户端和服务端都可以主动关闭连接。

客户端主动关闭时:客户端像服务端发送一个Fin+ACK包,进入等待1状态;服务端收到后返回一个ACK包表示确认收到,进入关闭等待状态;客户端收到后进入等待2状态;服务端继续把没有发送完的数据发送,发送结束后给客户端发送Fin+ACK包,进入最后确认状态;客户端收到后再发送ACK包,等待两个周期后关闭连接。

5.解析HTML

1.遇到css时,会阻塞DOM树的渲染,并阻塞js执行

2.然后时js加载,js加载会影响DOM树解析,之所以会影响是因为js可能会删除添加节点,如果先解析后加载,DOM树还要重新解析,性能较差。如果不想阻塞DOM解析可以给deffer或async标签。

differ:不会阻塞DOM解析,DOM解析完之后运行

async:不会阻塞DOM解析,资源下载完成后立即执行

6.渲染显示

获取html解析为dom树

解析css形成css树

将dom树,css树合并为render树

进行布局

进行绘制

回流重绘

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值