今天中午在http://news.ycombinator.com/news看到一篇文章标题:

Saved 10 billion DNS queries per month by disabling DNS Prefetching (pinkbike.com)

禁用DNS 预读取能节省每月100亿的DNS查询

顿时吸引了我的注意力。

首先作者说了自己最近因为DNS查询数比之前增加了4亿个,逼着要订一个每个月1600美元的DNS查询服务

然后又说了什么叫DNS 预读:

DNS prefetching is a fairly recent (added in Safari 7 months ago) enhancement to all the major browsers. After a page loads, the browser looks at all the hosts in the links on the page and in the background proceeds to issue DNS queries to resolve those hostnames.

大意就是浏览器为了加快域名DNS解析速度,会对网页的所有链接先做域名解析

为了证明是浏览器预读所导致作者网站一个月增加800%的DNS查询,作者一一排除了导致增加DNS查询个数的其它因素:

1.DNS TTLs

2.Lots of links/images on other sites(被其他网站盗链)

3.Misconfigured internal services hitting the DNS

然后用Dynect platform平台得出一个作者网站的DNS各种数据统计图,然后与本网站每秒动态网页生成的次数做对比,发现多处了120的DNS查询;也就是每秒多出120次DNS查询是无意义的

然后终于剑指浏览器的DNS预存取技术

然后举例证明,讲了一大堆反思的话,最后说好在可以使用meta 可以设置禁止DNS的预存。

但是我翻遍整个网站,都没有看看怎么设置DNS,只好查看作者网页的源代码

才发现,禁止的代码:<meta http-equiv="x-dns-prefetch-control" content="off" />(作者说测试过程IE8/9没有DNS预读取行为)

不过,浏览器DNS预读其实也是为了我们点击链接的时候省了解析DNS的时间,算是提速吧;除了作者网站动不动就上百评论链接带来的

DNS查询浪费,平常网站一个页面不超过数十个链接,也就没必要禁止DNS预读了。

刚刚发现关于这篇文章的很多有趣的评论:http://news.ycombinator.com/item?id=2306319

【转】浏览器DNS 预取读技术的危害的更多相关文章

  1. dns-prefetch—DNS预解析技术

    今天在看一个网站的源代码时 发现了 <link rel="dns-prefetch" href="//static.tuweia.cn/"> 对dn ...

  2. 20145233《网络对抗》Exp7 DNS网络欺诈技术防范

    20145233<网络对抗>Exp7 DNS网络欺诈技术防范 实验问题思考 通常在什么场景下容易受到DNS spoof攻击 公共的无线局域网中,容易受到攻击者的攻击,因为这样就会连入局域网 ...

  3. 浏览器 DNS缓存与DNS prefetch (DNS预解析)

    浏览器 DNS缓存 浏览器DNS缓存的时间跟DNS服务器返回的TTL值无关. 注:TTL(Time-To-Live),就是一条域名解析记录在DNS服务器中的存留时间. 浏览器在获取网站域名的实际IP地 ...

  4. DNS Prefetch 【DNS 预解析技术】

    DNS 实现域名到IP的映射.通过域名访问站点,每次请求都要做DNS解析.目前每次DNS解析,通常在200ms以下.针对DNS解析耗时问题,一些浏览器通过DNS Prefetch 来提高访问的流畅性. ...

  5. 内存直读技术DMA

    DMA(Direct Memory Access) DMA(Direct Memory Access)即直接存储器存取,是一种快速传送数据的机制. 工作原理 DMA是指外部设备不通过CPU而直接与系统 ...

  6. 常见的浏览器端的存储技术:cookie

    工作原理: cookie是存在用户硬盘中,用户每次访问站点时,Web应用程序都可以读取Cookie包含的信息.当用户再次访问这个站点时,浏览器就会在本地硬盘上查找与该 URL 相关联的 Cookie. ...

  7. 最快的方法来清除Chrome浏览器DNS高速缓存

    最快的方法是直接数据url.那么不需要清除dns高速缓存. chrome://net-internals/#dns 一般步骤,要经过下列几项. Chrome - > 扳手 - > 选项 - ...

  8. H5版如何在微信外(非微信浏览器)进行微信支付技术方案

    官方是支持在非微信内置浏览器中调起微信支付的!H5支付是基于公众号基础开发的一种非微信内浏览器支付方式(需要单独申请支付权限),可以满足在微信外的手机H5页面进行微信支付的需求.同时,由于H5链接传播 ...

  9. EEPlat的基于浏览器的在线开发技术

    EEPlat的开发内容主要包含配置开发和基于API的扩展开发两块内容. EEPlat的配置开发基于后台的配置环境.直接通过界面操作配置就可以. EEPlat的配置平台是用EEPlat自解释构建的.本身 ...

随机推荐

  1. avalonjs1.5 入门教程

    迷你MVVM框架 avalonjs1.5 入门教程 avalon经过几年以后,已成为国内一个举足轻重的框架.它提供了多种不同的版本,满足不同人群的需要.比如avalon.js支持IE6等老旧浏览器,让 ...

  2. IIS ASP.NET 版本转换批处理代码

    原文 IIS ASP.NET 版本转换批处理代码 用来转换asp.net版本的代码,需要的朋友可以参考下. 标识符的查看方法:iisaspnet.bat代码 复制代码代码如下: @echo off e ...

  3. 每天收获一点点------Hadoop基本介绍与安装配置

    一.Hadoop的发展历史 说到Hadoop的起源,不得不说到一个传奇的IT公司—全球IT技术的引领者Google.Google(自称)为云计算概念的提出者,在自身多年的搜索引擎业务中构建了突破性的G ...

  4. Power Strings (poj 2406 KMP)

    Language: Default Power Strings Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 33205   ...

  5. spring框架内置笔记本

    ◆基本介绍 目的:解决企业应用开发的复杂性 特征:使用主JavaBean更换EJB,它提供了许多其他的企业应用 范围:随你Java应用 Spring 框架是一个分层架构.由 7 个定义良好的模块组成. ...

  6. java基金会成立

    在java在,数据收集的操作,应使用非常.最近看了零星收集的小知识,在这里,一点点排序. 它基本上是四个常用的类操作点总结集合. 首先.集合大致分为两个方向.一种是普通的集合类型,通过接口collec ...

  7. asp.net学习之数据绑定控件、数据源控件概述

    原文:asp.net学习之数据绑定控件.数据源控件概述 1.asp.net数据绑定控件分为三大类,每个类分别进行详细:      ● 列表式数据绑定控件: 列表式数据绑定控件常用来在一个表格内的一个字 ...

  8. VS2015, .NET 4.6, C# 6.0, F# 4.0等重量级产品正式上线

    VS2015, .NET 4.6, C# 6.0, F# 4.0等重量级产品正式上线 Visual Studio Visual Studio 2015 下载 VS2015新功能列表 ‘ Visual ...

  9. ContentType是否大小写区分?

    ContentType控制web类型输出.无论是大小写是否区分? 例如: context.Response.ContentType = "application/json"; co ...

  10. NYoj The partial sum problem(简单深搜+优化)

    题目链接:http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=927 代码: #include <stdio.h> #include & ...