大型网站架构——性能优化之前端优化

本文探讨了大型网站性能优化的前端部分,包括减少HTTP请求、利用浏览器缓存、启用压缩、调整CSS和JavaScript顺序、减少Cookie传输、使用CDN、反向代理等手段。通过这些方法,可以显著提升网站的加载速度和用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大型网站架构——性能优化之前端优化

这一系列文章会用来记录《大型网站技术架构》的总结,相当于是一个读书笔记。最近读了这本书,给我最大的感受就是它差不多是一个“面试提纲”,串联起了许多以往在面经中经常见到的知识点及需要掌握的技术,也终于粗浅地理解了为什么企业需要我们掌握这些知识,它们在网站架构中可以用来做些什么。
跳过前面的介绍,我们从优化开始。根据网站分层架构,网站的性能优化可分为:

  • Web前端性能优化
  • 应用服务器性能优化
  • 存储服务器性能优化

三个大类。

前端除了我们熟悉的浏览器加载、图片服务之外,还有CDN也算作前端。CDN是什么呢?它是内容分发网络(Content Distribute Network),本质就是一个缓存服务器(缓存在大型网站性能方面起着非常重要的作用,总之什么性能提升都可以靠缓存,用就对了),部署在网络运营商的机房,所谓的“网络访问第一跳”,可以让用户以最快的速度获取数据。

前端性能优化的手段主要有:

  1. 浏览器访问优化

这里面包括:减少http请求、使用浏览器缓存、启用压缩、调整CSS和JavaScript的顺序、减少Cookie传输。

首先http协议是无状态的应用层协议,即每次http请求都需要建立一次通信链路,进行数据传输,服务器端也需要一个独立的线程去处理。所以减少http请求的数目可以有效提高访问性能。主要手段有:合并css、合并js、合并图片。

浏览器缓存也是比较熟悉的了,就是缓存一些静态资源,如logo、css、js文件等。可通过设置http头中cache-control和expires的属性实现。在更新静态资源时,也应该采用批量更新,比如需要更新10个图标文件,不是一次全部更新,而是一个一个逐渐更新,避免用户浏览器突然性的大规模缓存失效,造成服务器负载骤增的情况。

启用压缩:即在服务器端对文件进行压缩,在浏览器端对文件解压缩。gzip压缩或可达到较好的效果。但压缩可能对服务器和浏览器产生一定的压力,因而需要权衡考虑。

css放在页面最上面,js放在页面最下面:这是由于浏览器会在下载完所有的css之后才对整个页面进行渲染,但会在加载js之后立即执行。所以应该让浏览器尽快下载css而缓步执行js,当然页面解析需要用到的js另当别论。

减少cookie传输:这个比较简单,就此略过。

  1. CDN加速

就是利用CDN缓存静态资源,如图片、文件、CSS、Script脚本、静态网页等等。

  1. 反向代理

传统代理服务器位于浏览器一侧,代理浏览器将http请求发送到互联网上。而反向代理服务器位于网站机房一侧,代理网站WEB服务器接收http请求。(也就是大名鼎鼎的nginx的作用)
反向代理服务器具有保护服务器安全的作用,相当于一层缓冲吧,在web服务器和网络攻击之间建立了一个屏障。同时,也可以在代理服务器上配置缓存功能(又是缓存),加速web请求。此外,代理服务器还可以实现负载均衡功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值