nginxのパフォーマンスの最適化(4)

、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
おすすめ