zoukankan      html  css  js  c++  java
  • dns-prefetch对网站速度能提升有多少?详解dns-prefetch。

    DNS解析场景

        有很多大型的网站,都会用N 个CDN 域名来做图片、静态文件等资源访问。比如新浪,我们经常会看到有下列域。

       img1.sina.com.cn 、 img2.sina.com.cn 、img3.sina.com.cn 、img4.sina.com.cn 等等,包括天猫、京东等,都会这样去使用,这是为什么呢,还是出在DNS 解析和浏览器加载原理上,解析单个域名同样的地点加上高并发(极端)难免有点堵塞,再加上部分浏览器对相同域名去DNS 解析的时候会异步,导致速度下降,虽然这些速度上咱们可能看不上,但蚊子再小也是肉,优化就讲究极致

    DNS-Prefetch用处介绍

    上面说了那么多,下面来介绍下  dns-prefetch  ,在介绍之前,我们先看看我们的大佬们的使用情况,当然一般电商图片比较多,使用的较多。

    dns-prefetch天猫的使用

    dns-prefetch京东的使用

    dns-prefetch SOJSON 的使用 ^_^

       DNS Prefetch 是一种DNS 预解析技术,当你浏览网页时,浏览器会在加载网页时对网页中的域名进行解析缓存,这样在你单击当前网页中的连接时就无需进行DNS 的解析,减少用户等待时间,提高用户体验。 

         我们DNS 解析的时候,需要用域名去DNS 解析匹配  IP  ,这个是需要时间的,如果加了  dns-perfetch  呢,浏览器会记住(缓存)这个解析,直接就请求过去了,不需要再走DNS 解析。就是这么简单。

          当我们访问一个网站如 www.amazon.com 时,需要将这个域名先转化为对应的 IP 地址,这是一个非常耗时的过程。DNS prefetch 分析这个页面需要的资源所在的域名,浏览器空闲时提前将这些域名转化为 IP 地址,真正请求资源时就避免了上述这个过程的时间。

    DNS Prefetch使用方式

    使用方式上面图片已经有了,就是添加如下代码。

    1. <link rel="dns-prefetch" href="//cdn.www.sojson.com">

    “//” 开始是为了适配  https  和   http  。就是当前请求链接是https ,那么这个//前面自动补充https ,反则补充http 。

    应用场景1:

                我们的资源存在在不同的 CDN 中,那提前声明好这些资源的域名,就可以节省请求发生时产生的域名解析的时间
    应用场景2:

               如果我们知道用户接下来的操作一定会发起一起资源的请求,那就可以将这个资源进行 DNS-Prefetch,加强用户体验

  • 相关阅读:
    Andrew Ng机器学习公开课笔记–Principal Components Analysis (PCA)
    Python For Data Analysis -- Pandas
    Python For Data Analysis -- NumPy
    Python For Data Analysis -- IPython
    Andrew Ng机器学习公开课笔记 – Factor Analysis
    Andrew Ng机器学习公开课笔记 -- Mixtures of Gaussians and the EM algorithm
    Andrew Ng机器学习公开课笔记 -- Online Learning
    Machine Learning in Action -- Support Vector Machines
    HDU-1090-A+B for Input-Output Practice (II)(骗訪问量的)
    五种内部类形式将线程隐藏于类中
  • 原文地址:https://www.cnblogs.com/xuzhudong/p/8066537.html
Copyright © 2011-2022 走看看