"本次分享主要围绕性能优化展开,包括前端的网络传输性能优化和页面渲染性能优化,以及拓展讨论了负载均衡技术。分享者凌伟豪深入探讨了TPS、并发数、响应时间等关键指标,并提出了提高系统性能的具体策略。"
在性能优化的实践中,有几个核心概念值得重视:
1. TPS(Transactions Per Second):每秒钟完成的Web请求响应数量,它是衡量系统处理能力的重要指标。
2. 并发数:在一定时间内,系统能同时处理的Web请求数量,它直接影响到系统的承载能力。
3. 响应时间:所有Web请求处理完毕所需的时间,响应时间短意味着用户体验更好。
4. 吞吐量:单位时间内系统传输的数据总量。在资源有限的情况下,吞吐量可能在达到峰值后下降。
针对网络传输性能优化,分享内容涵盖了以下几个方面:
1. 浏览器缓存:通过配置memory cache和disk cache,可以减少网络请求,提高页面加载速度。
2. 资源打包压缩:将多个资源合并成一个文件,减少HTTP请求,同时使用Gzip等工具进行压缩,降低传输数据大小。
3. 图片资源优化:避免在HTML中缩放图片,使用合适尺寸的图片,考虑使用雪碧图(CSS Sprite)和字体图标(iconfont)来减小体积。另外,可以使用工具如TinyPNG对图片进行压缩。
4. 使用网络传输性能检测工具如PageSpeed Insights,分析并改进网站性能。
5. 结合OSS(对象存储服务)和CDN(内容分发网络),实现静态资源的快速分发,减轻服务器压力。
对于页面渲染性能优化,关注点包括:
1. 懒加载和预加载:根据需要加载资源,比如使用sessionStorage来判断是否已经加载过,以减少首屏加载时间。
2. CSS与JavaScript的位置:CSS应放在头部,确保页面样式尽早应用;JavaScript可以放在底部,不影响页面渲染。
3. 使用合适的图片格式:根据应用场景选择JPG、PNG或BMP,例如,对于有大量颜色变化的图片,JPG可能是更好的选择。
最后,分享中还涉及了负载均衡技术:
1. upstream配置:通过设置不同权重的服务器,实现负载均衡,提高系统可用性。
2. server配置反向代理:如nginx可以将用户请求分发到不同的服务,如课程服务和考试服务,实现服务间的解耦和负载均衡。
这次分享全面地探讨了性能优化的各个方面,提供了从网络传输到页面渲染再到系统架构层面的优化思路和实践方法。