dns-prefetch使用整理

本文讨论了DNS解析速度对网页加载时间的影响,介绍了DNS预获取(DNSPrefetch)的概念及其在前端优化中的作用,通过减少DNS请求次数和提前解析未访问域名来提升用户体验。

网站投放百度、谷歌联盟广告,百度分享、推荐等,由于不同的DNS请求,会增加了网页加载时间,用户等待时间过长会造成跳出率增高,对SEO有一定影响。

DNS解析速度是造成页面延迟加载的最大的原因。

DNS Prefetch,即DNS预获取,是前端优化的一部分。一般来说,在前端优化中与 DNS 有关的有两点: 一个是减少DNS的请求次数,另一个就是进行DNS预获取 。

DNS 作为互联网的基础协议,其解析的速度似乎很容易被网站优化人员忽视。现在大多数新浏览器已经针对DNS解析进行了优化,典型的一次DNS解析需要耗费 20-120 毫秒,减少DNS解析时间和次数是个很好的优化方式。DNS Prefetching 是让具有此属性的域名不需要用户点击链接就在后台解析,而域名解析和内容载入是串行的网络操作,所以这个方式能 减少用户的等待时间,提升用户体验 。

默认情况下浏览器会对页面中和当前域名(正在浏览网页的域名)不在同一个域的域名进行预获取,并且缓存结果,这就是隐式的 DNS Prefetch。如果想对页面中没有出现的域进行预获取,那么就要使用显示的 DNS Prefetch 了。

目前大多数浏览器已经支持此属性,支持版本如下:

– Safari: 5+
– Chrome: All
– Firefox: 3.5+
– Opera: Unknown
– IE: 9+ (called “Pre-resolution” on blogs.msdn.com)

其中 Chrome 和 Firefox 3.5+ 内置了 DNS Prefetching 技术并对DNS预解析做了相应优化设置。所以 即使不设置此属性,Chrome 和 Firefox 3.5+ 也能自动在后台进行预解析 。

目前很多大型站点也应用了这一优化,例如:

淘宝:

京东:

天猫:

蘑菇街:

 

DNS Prefetch 应该尽量的放在网页的前面,推荐放在 <meta charset="UTF-8"> 后面。具体使用方法如下:

<meta http-equiv="x-dns-prefetch-control" content="on">
<link rel="dns-prefetch" href="//www.zhix.net">
<link rel="dns-prefetch" href="//api.share.zhix.net">
<link rel="dns-prefetch" href="//bdimg.share.zhix.net"> 

需要注意的是,虽然使用 DNS Prefetch 能够加快页面的解析速度,但是也不能滥用,因为有开发者指出 禁用DNS 预读取能节省每月100亿的DNS查询 。

如果需要禁止隐式的 DNS Prefetch,可以使用以下的标签:

<meta http-equiv="x-dns-prefetch-control" content="off">

 

转载于:https://www.cnblogs.com/chenyablog/p/9705937.html

内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像分割的实际案例展示了其应用价值。AOA是一种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部开发,通过数学优化器加速函数(MOA)和数学优化概率(MOP)动态控制搜索过程,在全局探索与局部开发之间实现平衡。文章详细解析了算法的初始化、勘探与开发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进一步地,以Flask框架搭建前后端分离系统,将AOA应用于图像分割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化和并行计算等改进策略。; 适合人群:具备一定Python编程基础和优化算法基础知识的高校学生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像分割等实际问题中的建模与求解方法;③学习如何将优化算法集成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进一步扩展图像分割模块,引入更复杂的预处理或后处理技术以提升分割效果。
电子邮件是互联网上最基础的通信方式之一,而`email电子邮件接收程序`则是一个能够处理SMTP、POP3和IMAP4协议的应用程序。这些协议在电子邮件系统中各自扮演着不同的角色,使得用户能够发送、接收和管理邮件。 1. **SMTP(Simple Mail Transfer Protocol)**:SMTP是用于发送电子邮件的标准协议。 2. **POP3(Post Office Protocol version 3)**:POP3是一种用于从邮件服务器下载邮件的协议。3. **IMAP4(Internet Message Access Protocol version 4)**:相比于POP3,IMAP4提供了更高级的功能,允许用户在邮件服务器上管理邮件,如查看邮件、移动邮件、标记已读未读等,而不必将所有邮件都下载到本地。`IMAP4`的实现可能在`MailSvr.cpp`或相关文件中,涉及命令解析、邮箱目录结构处理、邮件搜索等功能。 4. 其他文件名如`UsrUtils.cpp`、`CTRLSvr.cpp`、`DNS.cpp`、`SysDepLinux.cpp`、`SysDepWin.cpp`、`SvrUtils.cpp`、`SMTPSvr.cpp`、`SvrUtils.cpp`暗示了程序的不同组成部分: - `UsrUtils.cpp`:可能包含用户交互相关的通用工具函数。 - `CTRLSvr.cpp`:可能涉及控制服务器的逻辑,如启动、停止服务。 - `DNS.cpp`:处理域名解析,确保邮件地址的有效性。 - `SysDepLinux.cpp`和`SysDepWin.cpp`:操作系统依赖部分,分别针对Linux和Windows平台的特定实现。 - `SvrUtils.cpp`:服务器通用工具函数,可能涉及网络通信、错误处理等。 - `SMTPSvr.cpp`:SMTP服务器的实现,负责邮件发送服务。 - `SvrUtils.cpp`:可能是另一个服务器相关组件的工具函数库。 这个`email电子邮件接收程序`可能是一个全面的邮件服务解决方案,包括了发送、接收、管理等多个方面。通过这些文件,开发者可以构建一个跨平台的邮件服务器,支持不同协议的用户需求,同时提供高效稳定的邮件服务。就以上内容分析,写一个关于该电子邮件接收程序的说明书
05-06
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值