一文看懂URL输入到文章展示的前世今生

110 阅读2分钟

前言:各位胖友们,大家新年好呀!去年说的好好得,要好好输出文章,结果已经记不起上一次写文章是什么时候了,手动捂脸。时间绝不会等你半步,一眨眼已经来到了2022年,懊悔不已的我只想砸胸口!不管是程序员还是广大网友,每天都要打开各种各样的网页。我们比较直观的印象是,输入地址后,经过短暂的加载时间,显示器就会展示出非常丰富的页面。那么,这当中究竟发生了什么呢?下面我们就具体展开讲讲。

先讲下大概的思路,页面绝不是平白无故就展示出来了,一定是客户端向服务器发送了一系列的请求,服务器返回了对应的资源,浏览器最终将这些资源渲染出来。

继续思考,就凭我们输入的这一堆乱七八糟的地址,浏览器怎么知道和哪个服务器获取资源呢?浏览器又是怎么发起一个请求的?

URL输入到文章展示的具体流程

  1. DNS解析域名,获取到请求服务器的ip地址
  2. 根据ip地址和服务器建立TCP连接
  3. 发起http请求
  4. 服务器返回响应信息
  5. 浏览器根据服务器返回的资源类型加载资源
  6. 更新页面状态,显示出页面
总结:以上就是个人觉得比较完整的一个渲染流程了。当然这只是比较浅显的回答了,以上6点其实都可以作为思考题,有兴趣的同学可以自行去查阅资料,彻底搞清楚这几点。当然你也可以尝试从浏览器底层架构的层面去回答本文的问题。Chrome作为一个多进程流程器,URL输入到页面展示其实是多个进程相互配合,协作完成的,比如浏览器进程,网络进程,渲染进程,他们在这一整个渲染流水线中都承担了什么工作,扮演了什么角色?好了,本文就不过多涉及这一块的东西了,因为我也还在学习当中,哈哈哈。欢迎各位胖友指正~