Nginx의 성능 최적화 (4)

A, GZIP 압축

1. gzip을 소개

GZIP는 온라인 실시간 데이터 ngx_http_gzip_module의 nginx를 서버 모듈 압축을 제공합니다. 압축 처리가 작아 진 파일로, GZIP 함수를 개방에 응답하여 상기 데이터 서버에 의해 수행 될 수있다. 높은 PV의 웹 사이트의 응용 프로그램에서, 당신은 대역폭의 방대한 양을 절약 할 수 있습니다.

같이 서버가 gzip 압축을 사용하는 경우, 클라이언트 브라우저 요청 헤더가 지원 GZIP 압축 파일 유형의 관점에서 다음과 같은 성명을 발표, 다음 응답 데이터가 압축 된 후 클라이언트에 반환, 클라이언트가 압축 해제에 대한 책임 다시 렌더링 :


8448742 - f10bb8167f5808cd.png
HTTP 요청 헤더 압축 유형에 대한지지를 선언

2. gzip으로 구성

일반적인 GZIP 구성 매개 변수 :

gzip on | off;    # 是否开启gzip
gzip_buffers 32 4K | 16 8K    # 缓冲(压缩数据缓冲在内存中,当达到N块内存,每块MK时,输出缓存)
gzip_comp_level [1-9]    # 压缩级别,级别越高,压缩比越大,越消耗CPU资源,推荐6
gzip_disable    # 指定不进行gzip压缩的uri
gzip_min_length 200    # 压缩文件长度超过200的文件
gzip_http_version 1.0 | 1.1    # 指定进行压缩的最小http协议版本
gzip_proxied    # 如果请求者是代理服务器,该如何缓存
gzip_types text/plain application/xml    # 指定要压缩的文件的类型
gzip_vary on | off    # 是否传输gzip压缩标志

우리가 방문하기 전에 관찰에서 gzip 압축, 데이터 길이 페이지 응답을 열기 전에 :


8448742-1a854246e299348b.png
전송하기 전에 열기 GZIP 데이터 길이

다음 열기 GZIP :

[root@localhost conf]# vim nginx.conf
# 在http上下文中添加gzip配置
gzip  on;
gzip_buffers 32 4K;
gzip_comp_level 6;
gzip_min_length 200;
gzip_types text/xml text/css application/javascript image/jpeg;
# 保存配置退出,重启nginx服务
[root@localhost conf]# ../sbin/nginx -s reload

GZIP를 개방 한 후, 상기 송신 데이터의 길이는 오직 원래 크기의 1/10이다.


8448742 - a5d864077fbfa39b.png
송신 데이터 길이 오픈 후 GZIP

3. 참고

  • 바이너리 파일의 압축 속도가 상대적으로 작은이지만, 비용이 매우 높은 CPU 리소스이기 때문에 정상적인 상황에서, 그것은, 사진, MP3 및 다른 압축 된 바이너리 파일 구성하지 않는 것이 좋습니다
  • 너무 작은 파일 압축

두 캐시 만료

HTTPS : //www.jianshu.com/p/6609829e68bf 재현

추천

출처blog.csdn.net/weixin_34281537/article/details/91053008