————————————————

Nginx优化配置

1、并发优化
nginx工作模式:主进程+工作进程

启动工作进程数量
worker_processes  4;
#指定运行的核的编号,采用掩码的方式设置编号
worker_cpu_affinity   0001 0010 0100 1000;


events {
单个工作进程维护的请求队列长度
    worker_connections  1024;
}

2、长连接
减少服务器维护因为与客户端建立http连接产生的大量tcp三次握手四次断开的开销

keepalive_timeout  0;  0代表关闭
#keepalive_timeout  100;
#keepalive_requests 8192;

3、压缩
降低传输时间,增加用户体验度;降低公司带宽费用。

gzip  on;
gzip_proxied any;
gzip_min_length 1k;
gzip_buffers 4 8k;
gzip_comp_level 6;
gzip_types text/plain text/css application/x-javascript application/javascript application/xml;


    # 开启gzip
    gzip off;

    #Nginx做为反向代理的时候启用:
	off – 关闭所有的代理结果数据压缩
	expired – 如果header中包含”Expires”头信息,启用压缩
	no-cache – 如果header中包含”Cache-Control:no-cache”头信息,启用压缩
	no-store – 如果header中包含”Cache-Control:no-store”头信息,启用压缩
	private – 如果header中包含”Cache-Control:private”头信息,启用压缩
	no_last_modified – 启用压缩,如果header中包含”Last_Modified”头信息,启用压缩
	no_etag – 启用压缩,如果header中包含“ETag”头信息,启用压缩
	auth – 启用压缩,如果header中包含“Authorization”头信息,启用压缩
	any – 无条件压缩所有结果数据


    gzip_proxied any;


    # 启用gzip压缩的最小文件,小于设置值的文件将不会压缩
    gzip_min_length 1k;

    # gzip 压缩级别,1-9,数字越大压缩的越好,也越占用CPU时间,后面会有详细说明
    gzip_comp_level 1;

    # 进行压缩的文件类型。javascript有多种形式。其中的值可以在 mime.types 文件中找到。
    gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png application/vnd.ms-fontobject font/ttf font/opentype font/x-woff image/svg+xml;

    # 增加响应头”Vary: Accept-Encoding”
    # 是否在http header中添加Vary: Accept-Encoding,建议开启
    gzip_vary on;

    # 禁用IE 6 gzip
    gzip_disable "MSIE [1-6]\.";

    # 设置压缩所需要的缓冲区大小     
    gzip_buffers 32 4k;

    # 设置gzip压缩针对的HTTP协议版本
    gzip_http_version 1.0;

4、静态缓存
将部分数据缓存在用户本地磁盘,用户加载时,如果本地和服务器的数据一致,则从本地加载。提升用户访问速度,提升体验度。节省公司带宽成本。
expires指令:开启缓存并指定静态缓存时间

location ~*  \.(png|gif)$ {
              expires 1h;
         }

5、服务器内存缓存

http { 
open_file_cache   max=2000 inactive=20s;
  open_file_cache_valid 60s;
  open_file_cache_min_uses 5;
  open_file_cache_errors off;
//设置服务器最大缓存2000个文件句柄,关闭20秒内无请求的文件句柄
//文件句柄的有效时间是60秒,60秒后过期
//只有访问次数超过5次会被缓存
}
posted @ 2022-11-08 23:38  Tjane'Blogs  阅读(58)  评论(0编辑  收藏  举报