域名解析系统 (DNS) 是一个用于将域名(如 www.example.com)转换为其相应互联网协议 (IP) 地址(如 192.0.2.1)的分层系统。IP 地址是计算机用来彼此通信的唯一标识符。
DNS 的功能您可以提高 DNS 性能,确保顺畅的互联网体验。
全面解析URL输入到页面加载全过程及性能优化
从浏览器地址栏输入 URL 开始,到页面完整展示的全过程,涵盖了前端领域多种知识。
接下来,我们详尽解析这个过程,并讨论性能优化策略。
过程分为浏览器进程、网络进程和渲染进程三个阶段。
在浏览器进程阶段:
网络进程阶段包括:
渲染进程阶段涉及:
性能优化策略包括:
通过上述分析,我们掌握了 URL 输入到页面加载的全过程,并了解到性能优化的关键策略,为提升用户体验打下基础。
从输入URL到页面展示的详细过程
url:统一资源定位符,用于定位互联网综上的资源 url构成:协议类型://<主机名>:<端口>/<路径>/文件名?参数名#锚点
浏览器缓存 浏览器会检查缓存中有没有这个域名对应的解析过的IP地址,如果缓存中有,这个解析过程就将结束 系统缓存 浏览器会查看本地硬盘的 hosts 文件,看看其中有没有和这个域名对应的规则,如果有的话就直接使用 hosts 文件里面的 ip 地址。
路由器缓存 如果系统缓存中也找不到,那么查询请求就会发向路由器,路由器一般会有自己的DNS缓存。
ISP DNS 缓存(域名商的域名解析系统) 如果在hosts文件中也没有找到对应的条目,浏览器就会发起一个DNS的系统调用,就会向 本地配置的首选DNS服务器(一般是运营商提供的)发起域名解析请求,(通过的是UDP协议向DNS的53端口发起请求,这个请求是递归的请求,也就是运营商的DNS服务器必须得提供给我们该域名的IP地址),运营商的DNS服务器首先查找自身的缓存,找到对应的条目,且没有过期,则解析成功。
如果都没有找到,则运营商的DNS代浏览器发起迭代DNS解析请求,查找域名对应 IP(见图)
(1)解析HTML文件,创建DOM树(解析执行JS脚本时,会停止解析后续HTML) (2)解析CSS,形成CSS对象模型 (3)将CSS与DOM合并,构建渲染树 (4)布局渲染树 (5)绘制渲染树(可能触发回流和重绘)
更详细的内容可以跳转到这篇博客
域名解析系统英文名
域名解析系统的英文名为Domain Name System,简称DNS。
详细来说,DNS是互联网中用于将域名转换为对应IP地址的系统。
在互联网中,每台计算机或设备都有一个唯一的IP地址,这个地址由一串数字组成,对于人类来说很难记忆。
为了方便用户访问网站,人们使用易于记忆的域名来代替这些复杂的IP地址。
当用户在浏览器中输入一个域名并请求访问时,DNS就会将这个域名解析为对应的IP地址,从而使得计算机能够找到并连接到目标服务器。
DNS的工作机制大致如下:当用户在浏览器中输入一个URL时,计算机会首先查询本地DNS缓存,看是否有之前解析过的记录。
如果没有,计算机会向配置的DNS服务器(通常是ISP提供的或者公司内部的DNS服务器)发出查询请求。
这台DNS服务器会逐级向上查询,直到找到权威的DNS服务器,获取到对应的IP地址后,再逐级返回给用户的计算机。
这个过程中可能涉及到多个DNS服务器的协作,确保解析的准确性和效率。
DNS不仅用于网站的访问,还广泛应用于电子邮件、即时通讯等各种互联网服务中。
同时,DNS也是网络安全的重要组成部分,通过合理配置和管理DNS,可以有效防止诸如钓鱼网站、恶意软件等网络安全威胁。
因此,理解并正确使用DNS对于互联网用户和网络管理员来说都是非常重要的。