前端性能优化方案

本文详细探讨了前端性能优化的各种方法,包括使用CDN加速、减少HTTP请求、脚本合并、CSS雪碧图、文件压缩、延迟加载图片、CSS3图标、避免重定向等。此外,还涉及代码优化,如减少DOM操作、降低重排重绘影响,以及缓存Ajax、配置Etags等策略。遵循Yahoo军规,以提升网页加载速度和用户体验。
摘要由CSDN通过智能技术生成

一、使用CDN【内容分发网络】加速

1、CDN

CDN【Content Delivery Network】,即内容分发网络。属于http缓存技术中的一种。

2、原理:

    其基本思路是尽可能避开网络上可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。CDN管理分布在多个地理位置上的服务器,其系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重定向到一个能提供最好用户体验的服务节点上。
    总的来说,内容服务基于缓存服务器,也称作代理缓存【网关缓存】,它位于网络的边缘,据用户仅“一跳”之隔。代理缓存提供数据中心服务器的一个镜像,当用户对某网址访问的请求并非第一次,那么代理缓存在很大概率上缓存了域名,就不需要大费周章通过DNS【域名服务系统】来获取对应域名。
    这里引用一个很喜欢的小比喻:古代交通不便,当有蛮夷入侵【用户请求】时朝廷从京城【数据中心服务器】调兵到边防,等军队到达的时候敌人早已一溜烟儿跑了。于是君主改变策略,将一批军队调配到边防驻扎,这些边防部队就能有效抵御入侵,正如代理缓存能快速响应用户请求\(^o^)/~

二、减少http请求【减少请求数,降低请求量】

1、脚本合并

原理

通常一个大型网站需要依赖多个JS文件。可以把多个文件合并成一个,这样只需要引用一个

方法

① Grunt
② JSCompress

2、CSS雪碧图

优点

① 减少http请求,提高页面加载速度。只需加载一张图片,且由于只需要一个对应的色表,这张图片的大小很可能比拼合前的总尺寸小。
② 减少鼠标滑过的bug:IE6不会主动预加载:hover中的背景图片,因此使用多张图片时会出现闪白的现象。

缺点

① 最大的问题是内存的使用:除非非常小心的组织,否则会留下大量无用的空白。
② 影响页面缩放功能:缩放时要避免雪碧中相邻图片露出来。

3、文件压缩

原理

包括CSS、JavaScript、图片的压缩。
JavaScript:

  • > 最小化:删除注释和空格等不必要的字符。安全、直白
  • 3
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值