从URL到页面,如何优化性能?

URL输入到页面加载期间的性能优化总结 URL输入到页面加载期间的性能优化总结。 从URL输入到页面显示,这期间具体发生了什么?并从中总结出可以优化页面加载速度的点。 DNS解析> 阅读详情

从输入URL之后,浏览器先做DNS解析,即将URL解析为唯一的ip地址,全互联网服务器都各自有一个唯一的ip地址,但一个ip地址可能是对应对台服务器,因此在获取资源是通过唯一的ip地址定位的。

DNS解析也是有一个过程的。以www.taobao.com为例,大致解析过程为:

①本机向local dns请求www.taobao.com

②local dns向根域请求www.taobao.com,根域返回com.域的服务器IP

③向com.域请求www.taobao.com,com.域返回taobao.com域的服务器IP

④向taobao.com请求www.taobao.com。

这里会涉及到一个重定向问题,比如输入的URL为https://taobao.com会被重定向到https://www.taobao.com。

为什么要这么做,第一是为了可以把两种方式的访问量累计到一起在一些搜索方面积累优势,

第二则是如果两个地址去访问的话对缓存问题存在一些不友好。

定位到ip地址后,向该服务器发起http请求,下载网页资源。

浏览器工作是边解析边渲染,其实下载html资源时间消耗很小,主要时间用于构建DOM树。


获取到HTML文件资源后:

众所周知,浏览器引起加载解析是自上而下的。

一、浏览器开始显示HTML,在没有接受全部HTML的时候已经开始显示;

二、浏览器发送获取嵌入HTML中的对象请求,比如CSS文件,JS文件,图片等等的资源。

这些请求其实也都和HTML获取经历一个类似的过程,也有DNS解析等等。

但和动态资源不同的是,这些静态资源可以做缓存,不需要每次都从服务器去获取。

三、最后展现完整的页面。

这三个步骤中,大家应该知道一下两点:

1.CSS文件会阻塞所有DOM渲染,但不阻塞DOM解析;

2.JS文件不仅阻塞其后面的DOM渲染也阻塞DOM解析。因为JS和UI是共用一个线程的。

因此要在HTML加载之前把CSS加载解析完毕,在最后才引入JS,则不会影响在它之前的流程,也能够显示页面(优雅降级,即使JS出错)。

另外也存在js中会有改变某个DOM元素的样式,但若CSS还未解析,如style.width等属性还未生成则会报错。

这也就是为什么外部JS文件放在body之后引入,CSS文件放在head内引入。


那么基于这些过程,能够如何优化性能呢?


首先,我们应该了解浏览器渲染过程中,有reflow和repain两个概念。

reflow是改变盒子大小,成本极高,应该会改变整个DOM布局;repain则是改变颜色等一些只影响本身的属性,成本较低。

一、因此在初始化过程中尽量避免用JS去reflow导致性能受较大的影响。

二、CSS选择器匹配机制是自右向左的!!!什么意思呢,很多人往往写样式的时候会习惯#id .xx .xx .xx p a等等,

查找步骤其实是先全页中匹配到a标签,然后再向上遍历到根节点#id为止。

这样的写法是比较消耗性能的,那么很明显,最右边的选择器是标签选择器必然会消耗很大的性能要避免;同时,如果是唯一的id选择器那么速度则会很快。

三、本文上面也有讲到,对于一些静态资源可以做缓存来提高页面加载速度和性能,关于http请求缓存相关内容,可出门左拐哈=>http请求缓存

四、减少http请求,压缩代码等等,雅虎前端优化规则等等之类的可以逐一进行学习。


CAD图纸智能搜索三大突破:图纸秒搜技术、相似度匹配与AI语义搜索 CAD图纸作为核心资产,长期面临管理难题:传统全文检索需逐张打开图纸人工查找,效率低下;相似图纸匹配依赖人工比对,误差率高;非专业人员难以通过模糊描述精准定位图纸。针对这些问题,唯杰地图推出三项智能解决方案:一是基于现代化索引引擎的​​全文搜索​​,支持秒级检索图纸内的文字、图层、块名称等,并可多条件组合查询;二是​​相似度搜索​​,通过SIFT算法和深度学习提取几何特征与拓扑结构,实现高精度匹配;三是​​AI语义搜索​​,利用大模型解析自然语言指令(如“查找半径为10的红色圆”),直接定位目标图形。 阅读详情

相关推荐

LTE随机接入实战:如何通过PRACH前导码优化小区覆盖半径(附计算公式)

本文深入探讨了LTE网络中PRACH前导码格式对小区覆盖半径的关键影响。通过解析不同前导码格式(如Format 0-3)的物理参数与覆盖能力,提供了核心计算公式与实战Python脚本,指导网络工程师根据覆盖需求、环境多径和容量等因素,科学选择前导码格式以优化边缘用户接入成功率,实现精准的网络规划与优化。

qq_27496129的博客 575

从输入 URL 开始,聊一聊浏览器、网络等相关的知识

前置内容 浏览器主要进程浏览器是多进程的,主要分为:浏览器主进程:只有一个,主要控制页面的创建、销毁、网络资源管理、下载等。第三方插件进程:每一种类型的插件对应一个进程,仅当使用该插件时才...

前端达人 701

微波射频学习笔记18-------偶极子天线和微波天线设计介绍

几种天线设计方法的介绍 一、偶极子天线 1.天线模型 两根紧挨着的金属导体,长度均为四分之一波长,直径均远小于波长,两导体间距也远小于波长。 2.天线性能的设计因素 ① 单个导体长度L:(光速/频率)/4=四分之一波长(在空气中传播的波长),但在导体中传播,波长会变短; ② 导体半径R:远小于波长即可,使用导电率高些的材料,市面上常见直径零点几毫米就挺好,或者用波长/200,得出一个小200的值,也算远小于波长; ③ 两导体间距S:远小于波长即可,可以比半径更小点。 以上三个变量L、R、S,均可在仿真软件

Sil_sprout 1万+

页面性能优化

页面性能优化

Z_J_Xx的博客 1580

【AI赋能】Sora + CapCut 打造爆款短视频:从脚本到发布的自动化工作流

本文详细介绍了如何利用Sora、Grok和CapCut等AI工具构建自动化短视频生产工作流。通过结构化Prompt生成专业脚本,借助Sora将文字转化为高质量视频素材,并利用CapCut进行高效剪辑与合成,实现从创意到发布的十倍效率提升,助力个人及团队打造爆款内容。

g8f9d0s1a2的博客 499

去面试游戏测试工程师,面试官看着我的简历呆住了

!我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。欢迎大家点击下方名片免费领取,千万不要错过哦。

MXB1220的博客 7332

码云使用入门教程

    第一步、先要在码云上面创建一个空的项目:然后填个项目名称就行了,项目介绍可填可不填。               第二步、创建成功后,获取到其URL就行了。     第三步、就是到Eclipse上面去把自己的项目上传到码云上面来。      对着项目右键,点击team下的share project 点击share project只有,跳转到如下页面 ...

weixin_30810583的博客 3224

cdh zookeeper未授权访问(安全漏洞)处理

前言: 最近公司在做安全漏洞扫描。发现cdh zookeeper存在未授权访问的问题。 ZooKeeper的节点有5种操作权限: CREATE、READ、WRITE、DELETE、ADMIN 也就是 增、删、改、查、管理权限,这5种权限简写为crwda(即:每个单词的首字符缩写) 注:这5种权限中,delete是指对子节点的删除权限,其它4种权限指对自身节点的操作权限 ZooKeeper的身份的认证有4种方式: world:默认方式,相当于全世界都能访问 auth:代表已经认证通过的..

belialxing的专栏 2448

网页性能优化

1. 网络加载 ⑴ DNS预加载 通过dns-prefetch属性可以让浏览器提前解析资源或接口对应的服务器IP地址,避免在请求中发起DNS解析请求,节省请求时间。 ⑵ CDN加速 CDN的优点:  本地Cache加速,加快访问速度  镜像服务,消除运营商之间互联的瓶颈影响,保证不同网络的用户都能得到良好的访问质量  远程加速,自动选择cache服务器  带宽优化,分担网络流量,...

zl13015214442的博客 6917

PCL 改进快速欧式聚类【2025最新版】

在FEC: Fast Euclidean Clustering for Point Cloud Segmentation一文的基础上对算法进行改进。博客长期更新,本文最近更新时间为:2025年9月16日。

点云侠的博客 2570

RK3568平台(内存篇)DDR定频修改

如果需要DDR定频,则还需要注释掉其他多余的DDR频率,保留一个即可,例如注释掉opp-528000000、opp-1068000000、opp-1560000000,保留opp-2750000000则是定频最大频率。如果回退必须将 dmc_opp_table节点 的其他频率打开,否则系统无法选择到其他频率运行。ddr频点不对,先把ddr变频关掉,关闭后系统就不会一直重启了,以下是修改DDR频点的。rk3588修改定频节点在rk3588s.dtsi 的 dmc: dmc。

weixin_49303682的博客 1623

有利于网站的URL优化方法是什么?

有利于网站的URL优化方法是什么?

软希网分享源码的博客 470

展锐 Android 15 无听筒方案删除配置

【代码】展锐 Android 15 无听筒方案删除配置。

m0_60898338的博客 167

深入解析:从URL到页面渲染的完整过程与性能优化【页面渲染、重排、重汇】

从用户输入URL到页面最终渲染,整个过程涉及网络通信(DNS查询、TCP连接)、资源加载(HTML、CSS、JavaScript)、解析与执行(构建DOM、CSSOM、执行JavaScript)、渲染优化(布局、绘制、合成)。这一系列步骤的高效执行依赖于现代浏览器的渲染引擎和多种性能优化技术,以提供流畅的用户体验。优化网页性能的核心在于减少不必要的重排和重绘操作,尤其是在复杂的应用场景中,频繁的布局计算和绘制会显著影响用户体验。

qq_22841387的博客 2102

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

从输入URL地址到看到页面,到网络性能优化

从输入URL地址到看到页面,中间经历了什么? URL解析 缓存检查 DNS解析 TCP三次握手 数据传输 TCP四次挥手 页面渲染 第一步:URL解析 地址解析 协议 默认端口号 传输协议 http 80 超文本传输协议 https 443 在http的基础上进行了安全设置(SSL/TSL)证书认证 ftp 21 主要用于客户端电脑和服务器端的文件传输 URL的编码 对于一些特殊字符,我们在客户端和服务器端传递的时候,需要进行解码和编码 encodeURI、de.

wangxinyue_blog的博客 344

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

base64:URL背景图片与web页面性能优化

转载自:http://www.zhangxinxu.com/wordpress/2012/04/base64-url-image-%E5%9B%BE%E7%89%87-%E9%A1%B5%E9%9D%A2%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96/ 小tip: base64:URL背景图片与web页面性能优化 这篇文章发布于 2012年04

mozuncangtianbaxue的博客 619

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

从输入url到页面展示发生了什么?其中再页面渲染以及网络请求响应的性能优化方面,我们分别可以做哪些优化工作?

从输入url到页面展示发生了什么?其中再页面渲染以及网络请求响应的性能优化方面,我们分别可以做哪些优化工作?

qq_41552234的博客 255

性能优化之从URL到页面展示

本文发于微信公众帐号: 一界码农(The_hard_the_luckier) 无需授权即可转载; 甚至无需保留以上版权声明…今天从性能优化的角度再来看看从URL到页面展示,前两...

weixin_43392568的博客 323

从输入url发生了什么,谈前端页面性能优化

旨在发散思路,具体可以自己分析并实践

illusion_melody的博客 284

15 行代码出图:MOSS-Image-SFT 本地文生图部署与版面控制完全指南

MOSS-Image-SFT 是 OpenMOSS 团队推出的监督微调(SFT)版文生图模型,支持中英文提示词、图内中文文字渲染,还能用 JSON Layout 精确控制版面。这篇文章把本地出图的完整链路走一遍:装环境、跑出第一张图、讲清采样参数、掌握 Layout 布局控制,最后整理一份踩坑速查表。 读完能带走三样东西:一套可直接复制运行的环境安装与生成脚本、一份逐参数解释的默认设置说明,以及

gitblog_00346的博客 870

从输入url到页面渲染可以做哪些性能优化?

上一篇我们罗列了从输入url到页面渲染到底经历了什么?那我们今天再来说说这个步骤中,我们能做哪些的性能优化? DNS Prefetch 上一篇文章只说了浏览器访问一个域名的时候需要经过DNS解析。其实DNS解析是有一个解析过程的,按浏览器缓存、系统缓存、路由器缓存、ISP(运营商)DNS缓存、根域名服务器、顶级域名服务器、主域名服务器的顺序,逐步读取缓存,直到拿到IP地址。 通过主机名加载一个页面通常仅需要解析DNS一次,但是如果页面的资源文件比如:fonts、images、scripts等都是不同的主机名

sinat_34798463的博客 649

深入解析浏览器渲染全流程:从URL输入到页面渲染的底层原理与性能优化(附实战代码)

涵盖DNS解析、TCP/TLS握手、HTTP请求、DOM/CSSOM构建等核心阶段,结合代码示例与性能调优技巧,助你掌握浏览器底层运行机制。ServerHello (选定密码套件) + Certificate + ServerFinished。:你在项目中如何优化首屏渲染速度?欢迎在评论区分享实战经验!ClientHello (支持的密码套件)

前端御书房 1210

从URL到页面渲染:一次完整HTTP请求的深度架构解析与企业级性能优化实战

一次完整的HTTP请求涉及从客户端到服务端的完整技术栈,理解这个全过程对于架构师来说至关重要。这不仅有助于系统性能优化,更是设计高可用、高并发系统的基础。关键架构洞察DNS解析是全局负载均衡的第一环,基于GeoDNS的智能路由提升用户体验TCP三次握手建立可靠的端到端连接,内核参数调优决定并发处理上限TLS握手构建安全加密通道,前向安全设计保护数据机密性L4/L7负载均衡分层架构实现流量智能分发和高可用应用服务器过滤器链确保安全性和可观测性,异步处理提升资源利用率。

weixin_42079748的博客 1228

从请求一个url到请求响应和页面渲染,有哪些可以做到性能优化的工作?

四、从浏览器发起请求到页面能正常浏览都有哪些阶段(process)? 预处理——>DNS解析——>建立连接——>发起请求——>等待响应——>接受数据——>处理元素——>布局渲染 五、性能优化的具体方法(way) 一)内容层面,优化网络连接 1、DNS解析优化,减少DNS路由查询(DNS缓存、减少DNS查找、keep-alive、适当的主机域名) ...

weixin_39307273的博客 1285

深入探究“在浏览器输入URL到渲染页面”(中)性能优化

前言 关于这道经典的面试题,笔者准备写三篇文章来对知识点进行深度和广度的挖掘: 深入探究“在浏览器输入URL到渲染页面”(上)过程剖析 深入探究“在浏览器输入URL到渲染页面”(中)性能优化 深入探究“在浏览器输入URL到渲染页面”(下)模拟面试 正文 在 第一篇文章 中写到,用户在输入 url 并回车之后,浏览器经历了下面这些阶段:重定向 → 拉取缓存 → DNS 查询 → 建立 TCP 连接 → 发起请求 → 接收响应 → 处理 html 元素 → 页面进行渲染。因此性能优化也可以从这几个阶段入手:

Syandeg的博客 349

小tip: base64:URL背景图片与web页面性能优化

http://www.zhangxinxu.com/wordpress/2012/04/base64-url-image-图片-页面性能优化/ 转载于:https://www.cnblogs.com/anyaran/p/4355872.html

diaosheng8387的博客 110
上一篇: HTTP请求跨域问题,解决模棱两可。
下一篇: 如何新建typescript配合webpack项目
luke_up
博客等级 码龄12年 19粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值