一、序言
使用Nginx作为web应用服务时,会代理如下常见文件:js
、css
、JSON
、图片
等,本文提供基于Nginx内置的压缩技术,提供网络请求响应速度的解决方案。
1、网络压缩原理
网络压缩的原理是消耗CPU资源,减少文件在公网传输的大小,提高响应速度。相比于CPU的计算资源,网络带宽通常较为昂贵,因此通过CPU资源置换网络带宽资源在实际生产中是可行的操作方案。
二、网络压缩
此部分所有的压缩内容在浏览器端都会还原,特别需要指出的是图片,图片在网络间是压缩状态传输的,到达浏览器后是会被还原的。
技术实现依托gzip压缩,仅仅在服务器与客户端网络传输时对静态资源进程压缩,文件的大小在压缩前与还原后保持不变。
(一)Web资源
1、静态资源
前端项目中js/css文件越来越大,对其执行压缩处理越来越有必要。
gzip on;
gzip_comp_level 5;
gzip_min_length 10K;
gzip_types application/javascript text/css;
2、动态资源
通过代理后端服务返回的JSON数据属于动态资源的一种。对于一些较大的JSON响应体,为加快响应速度,通常也需要做压缩处理。
gzip on;
gzip_comp_level 5;
gzip_min_length 50K;
gzip_t