从输出一个URL到页面呈现的过程

第一步:DNS解析

将用户输出的域名转化成IP

第二步:浏览器向服务器发动TCP连贯申请

通过TCP三次握手,建设TCP连贯。

第三步:服务器返回数据

服务器会判断访问者能不能拜访,比方:访问者IP是不是非法,是不是在黑名单里等等。
能够拜访的话,服务器会返回响应的数据包。

第四步:浏览器加载和渲染页面

包含HTML的解析,动态资源的加载,CSS的渲染,JS 脚本的运行等。

过程与线程

过程:是程序运行的一个实例。操作系统会为过程创立独立的内存,用来寄存运行所需的代码和数据。
线程:过程的组成部分。
每个过程至多有一个主线程和可能的若干个子线程。

  1. 某一个线程执行出错,会导致整个过程解体。
  2. 过程与过程之间是相互隔离的,所以一个过程的解体,不会影响其余过程。
  3. 线程之间能够共享所属过程的资源,因此,多线程的并行处理可能无效进步程序的运行效率。