课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
我们在前文中曾经给大家分析过关于web前端性能优化的好处有哪些。今天我们就来了解一下,如何从编码的角度来进行web性能优化,下面就开始今天的主要内容吧。
目前,所有主流浏览器都支持利用gzip加Content-Encoding标头进行数据压缩。这意味着面向浏览器的发送数据量更低,从而带来更快的内容传递速度。此外,如果浏览器支持,大家也可以尝试使用效率更高的brotli压缩算法。
HTTP/2协议
HTTP/2是HTTP网络协议的新版本(DevConsole中简称为h2)。由于存在着以下几项与HTTP/1.x版本间的显著差别,切换至HTTP/2能够带来性能提升:
HTTP/2为二进制,而非文本式。因此其解析效率更高,也更加紧凑。
HTTP/2具有多路复用属性,这意味着HTTP/2可以通过单一TCP连接发送多项请求。如此一来,我们就不必担心每主机浏览器连接限制以及域名分片等问题。
其利用标头压缩机制减少请求/响应的实际体积。
允许服务器主动推送响应。这项功能拥有诸多有趣的实际应用方式。
HTTP/2ServerPush
由于给现有工具及生态系统(例如rack)引入了一系列颠覆性的变更,很多编程语言与库并不能完全支持HTTP/2的全部功能。但即便如此,我们仍然可以在部分合适的场景中使用HTTP/2。举例来说:
利用HTTP/2在常规HTTP/1.x服务器之前设置一套h2o或者nginx代理服务器。Puma与RubyonRails能够发送EarlyHints,从而在一定的限制条件下启用HTTP/2ServerPush。
利用支持HTTP/2的CDN交付静态资产。例如,我们可以使用这种方法将字体以及一部分JavaScript文件推送至客户端。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!