DNS解析优化的主要方法

简介: DNS解析优化的主要方法

如何清除DNS缓存?

在浏览器中输入下面的地址:

chrome://net-internals/#dns

同时需要清空socket池

image.png

清除系统的DNS缓存

  1. 查看Windows系统中的缓存
ipconfig /displaydns
复制代码
  1. 在windows中清除DNS缓存记录
ipconfig /flushdns
复制代码
  1. 在macOS中清除DNS缓存记录
sudo killall -HUP mDNSResponder
复制代码

如何清空缓存并进行硬刷新?

在F12的情况下,右键刷新按钮即可选择。

什么是TTL?

当我们进行域名解析设置的时候,平台总会让我们设置一个TTL时间,这个TTL时间指的就是域名对应的DNS解析记录的缓存的过期时间。如果经常更换域名指向的IP地址,可以将这个时间设置短一些,但是如果不经常更换IP地址的话,可以将这个时间设置的长一些。

DNS解析优化的主要方法

一般来说,在前端优化中与DNS有关的有两点:

  • 减少DNS的请求次数
  • 进行DNS预获取:DNS Prefetch

1. 减少DNS查找

域名系统DNS将主机名映射到IP地址,就像电话簿将人们的姓名映射到他们的电话号码中,在浏览器中输入 www.taobao.com 时,浏览器联系的DNS解析器将返回该服务器的IP地址,DNS有成本,DNS通常需要20-120毫秒来查找给定主机名的IP地址,在DNS查找完成之前,浏览器无法从该主机名下载任何内容。

缓存DNS查找以提高性能,这种缓存可以由用户的ISP或局域网维护的特殊缓存服务器上进行,但是在个别用户的计算机上也会发生缓存,DNS信息保留在操作系统的DNS缓存中,大多数浏览器都有自己的缓存,与操作系统的缓存分开,只要浏览器将DNS记录保留在自己的缓存中,它就不会对操作系统的记录请求进行干扰。

默认情况下Chrome会缓存1分钟的DNS查找。

当客户端中的DNS缓存为空时(浏览器和操作系统都为空),DNS查找的次数和页面中主机名的数量相同。这其中包括页面中URL、图片、脚本文件、样式表、Flash对象等包含的主机名。减少主机名的数量可以减少DNS查找次数。

减少主机名的数量还可以减少页面中并行下载的数量,减少DNS查找次数可以节省响应时间,但是减少并行下载却会增加响应时间。

2. DNS预获取

DNS-prefetch(DNS预获取)是尝试在请求资源之前解析域名,这可能是后面要加载的文件,也可能是用户尝试打开的链接目标。域名解析和内容载入时串行的网络操作,所以这个方式能减少用户的等待时间,提升用户体验。

DNS-prefetch可以帮助开发人员掩盖DNS解析延迟。HTML的link元素通过dns-prefetch的rel属性值提供此功能,然后再href属性中指要跨域的域名。

每当站点引用跨域资源的时候,都应在head元素中放置dns-prefetch提示,但是要记住下面的注意事项。

  1. DNS-prefetch仅对跨域的DNS查找有效。
  2. dns-prefetch要谨慎使用,多页面重复DNS预解析会增加DNS查询次数。
  3. 默认情况下浏览器会对页面中和当前域名不在同一个域的域名进行预获取,并且缓存结果,这就是隐式的DNS Prefetch。如果想对页面中没有出现的域进行获取,那么就要使用显示的DNS Prefetch了。
  4. 虽然使用DNS Prefetch能够加快页面的解析速度,但是也不能滥用,因为有开发者指出禁用DNS预获取能节省每月100亿的DNS查询。

3. 延长DNS缓存时间

4. 尽可能使用A记录代替CNAME

5. 使用CDN加速域名

相关文章
|
21小时前
|
负载均衡 网络协议 容灾
【飞天技术沙龙】云解析DNS上海站《多云+IDC融合场景下的DNS最佳实践》圆满落幕
【飞天技术沙龙】云解析DNS上海站《多云+IDC融合场景下的DNS最佳实践》于5月22日在上海举行,吸引了20余家知名企业参与。本次沙龙聚集“多云+IDC的融合DNS场景”,从DNS在“企业上云”和“容灾调度”两个主题的最佳实践展开分享,沙龙活动取得了圆满成功。
|
21小时前
|
域名解析 监控 网络协议
【域名解析 DNS 专栏】DNS 域名抢注与预防:保护品牌域名资产
【5月更文挑战第28天】DNS域名抢注危害企业品牌形象和资产,可能导致消费者误入错误网站、声誉受损及商业机会流失。预防措施包括:提前注册相关域名、建立监控机制和加强品牌保护意识。使用代码监测域名可用性,或借助专业服务,可更有效地保护域名资产。重视域名管理,提高网络安全意识,以应对网络环境挑战。
|
21小时前
|
域名解析 缓存 监控
【域名解析 DNS 专栏】DNS 查询日志分析:洞察网络行为与优化建议
【5月更文挑战第28天】DNS查询日志分析对于理解和优化网络行为至关重要。通过日志,可洞察用户访问偏好、流量分布,进而进行缓存优化、负载均衡和安全检测。简单Python代码示例展示了如何读取和分析日志。根据分析结果,可针对性设置优化策略,提升网络性能、稳定性和安全性。不断探索新的分析方法,充分挖掘DNS查询日志的价值,以驱动网络持续优化。
|
21小时前
|
域名解析 缓存 监控
【域名解析 DNS 专栏】解析失败的 DNS 重试策略与配置优化
【5月更文挑战第28天】DNS解析在数字化时代关键但常遇失败,可能由网络、服务器或域名错误引起。实施智能重试策略(如指数级增长的重试间隔)和配置优化(如选用可靠DNS服务器、设置缓存、监控预警)能提高成功率和系统稳定性。示例代码展示基本DNS重试函数,强调需按业务需求调整策略并配合监控以保证高效稳定的DNS解析。
|
2天前
|
域名解析 编解码 负载均衡
【域名解析DNS专栏】域名解析中的EDNS扩展:提升DNS协议灵活性
【5月更文挑战第27天】EDNS(Extension Mechanisms for DNS)是为了解决传统DNS协议在复杂网络环境下的灵活性和扩展性问题而诞生的技术。它允许在DNS请求和响应中添加额外选项,提高查询效率,支持更大数据范围,增强安全性,并实现负载均衡和故障转移。通过在DNS消息中包含EDNS部分,客户端和服务器能交换更多信息,实现更复杂的逻辑。EDNS的使用示例代码展示了如何在Python中创建和处理EDNS选项。随着技术进步,EDNS将在域名解析领域扮演更重要角色。
|
2天前
|
域名解析 负载均衡 网络协议
【域名解析DNS专栏】DNS解析中的Anycast技术:原理与优势
【5月更文挑战第27天】Anycast技术是解决DNS解析高效、稳定和安全问题的关键。它将一个IP地址分配给多地服务器,客户端请求自动路由至最近的低负载服务器,减少延迟,提高解析速度。此外,Anycast实现负载均衡,缓解DDoS攻击,并确保高可用性。通过遍历Anycast服务器选择最低延迟者进行DNS解析,实现网络性能优化。随着技术发展,Anycast在DNS解析中的应用将更加广泛。
|
4天前
|
移动开发 网络协议 安全
HTML5页面被运营商DNS问题及解决方案,app中h5页面源码的获取
HTML5页面被运营商DNS问题及解决方案,app中h5页面源码的获取
56 4
|
5天前
|
域名解析 网络协议 应用服务中间件
2024最新彩虹聚合DNS管理系统源码v1.3 全开源
聚合DNS管理系统可以实现在一个网站内管理多个平台的域名解析,目前已支持的域名平台有:阿里云、腾讯云、华为云、西部数码、DNSLA、CloudFlare。 本系统支持多用户,每个用户可分配不同的域名解析权限;支持API接口,支持获取域名独立DNS控制面板登录链接,方便各种IDC系统对接。
53 0
|
11天前
|
Linux 网络安全 Windows
网络安全笔记-day8,DHCP部署_dhcp搭建部署,源码解析
网络安全笔记-day8,DHCP部署_dhcp搭建部署,源码解析
|
12天前
HuggingFace Tranformers 源码解析(4)
HuggingFace Tranformers 源码解析
78 0

相关产品

  • 云解析DNS
  • 推荐镜像

    更多