zoukankan      html  css  js  c++  java
  • 一个页面从输入URL到页面加载显示完成,这个过程都发生什么?

    一般会经历以下几个过程:

    1、首先,在浏览器地址栏中输入url

    2、浏览器先查看浏览器缓存-系统缓存-路由器缓存,如果缓存中有,会直接在屏幕中显示页面内容。若没有,则跳到第三步操作。

    3、在发送http请求前,需要域名解析(DNS解析),解析获取相应的IP地址。

    4、浏览器向服务器发起tcp连接,与浏览器建立tcp三次握手

    5、握手成功后,浏览器向服务器发送http请求,请求数据包

    6、服务器处理收到的请求,将数据返回至浏览器

    7、浏览器收到HTTP响应

    8、读取页面内容,浏览器渲染,解析html源码

    9、生成Dom树、解析css样式、js交互

    10、客户端和服务器交互

    11、ajax查询

    其中,步骤2的具体过程是:

    • 浏览器缓存:浏览器会记录DNS一段时间,因此,只是第一个地方解析DNS请求;
    • 操作系统缓存:如果在浏览器缓存中不包含这个记录,则会使系统调用操作系统,获取操作系统的记录(保存最近的DNS查询缓存);
    • 路由器缓存:如果上述两个步骤均不能成功获取DNS记录,继续搜索路由器缓存;
    • ISP缓存:若上述均失败,继续向ISP搜索。

     

  • 相关阅读:
    Tensorflow使用环境配置
    学习笔记——EM算法
    学习笔记——提升方法
    学习笔记——支持向量机
    加入BOINC(伯克利开放式网络计算平台)
    斐波那契大数模板
    多重部分和的计数dp
    POJ 2674 Linear world
    POJ 1222 EXTENDED LIGHTS OUT(翻转+二维开关问题)
    POJ3185 The Water Bowls(反转法or dfs 爆搜)
  • 原文地址:https://www.cnblogs.com/kkdn/p/9324019.html
Copyright © 2011-2022 走看看