nginx篇高级之优化整理

优化思路:

一.修改连接数和工作线程让其支持更多的并发量.

  worker_processes 2;                    //与CPU核心数量一致

  worker_connections 65535;        //每个worker最大并发连接数

二.调整内核参数限制(最大打开文件数量)

  ulimit -a   //查看所有属性值

  ulimit -Hn 100000   //设置硬限制(临时规则)

  ulimit -Sn 100000   //设置软限制(临时规则)

  编辑 /etc/security/limits.conf

  * soft nofile 100000

  * hard nofile 100000

#该配置文件分4列,分别如下:

#用户或组 硬限制或软限制 需要限制的项目 限制的值

三.优化nginx数据包头缓存

  在nginx配置文件中

  http{

    client_header_buffer_size 1k;        //默认请求包头信息的缓存     

    large_client_header_buffers 4 4k;        //大请求包头部信息的缓存个数与容量

  }

四.通过在配置文件中指定客户端缓存静态文件时间.

  server {

    listen 80;

    server_name localhost;

    location / {

      root html;

      index index.html index.htm;

    }

    location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ {

      expires        30d;            //定义客户端缓存时间为30天

    }

  }

五.日志文件切割

  通过脚本对nginx进行日志切割,重启nginx服务即可.

六.对页面进行压缩处理

  http{

    gzip on;          //开启压缩

    gzip_min_length 1000;     //小文件不压缩

    gzip_comp_level 4;      //压缩比率

    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

    //对特定文件压缩,类型参考mime.types

  }

七.服务器内存缓存

  如果是处理大量静态文件,可以将文件缓存在内存,下次访问会更快.

  http {

    open_file_cache max=1000 inactive=30s;  //设置服务器最大缓存1000个文件句柄,关闭30秒内无请求的文件句柄

    open_file_cache_valid 60s;  //文件句柄的有效时间是60秒,60秒后过期

    open_file_cache_min_uses 10;  //只有访问次数超过10次会被缓存

    open_file_cache_errors off;

}

八.隐藏版本信息 

  http {
    server_tokens off; //在http中加上server_tokens off 
  }

  编辑php-fpm配置文件,在动静分离location 分离php页面中找到fastcgi配置

  将 fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

  改为 fastcgi_param SERVER_SOFTWARE nginx;

猜你喜欢

转载自www.cnblogs.com/lqinghua/p/11621389.html