您现在的位置是:首页 > 文章详情

Nginx性能优化

日期:2018-08-12点击:500

1、调整worker进程数

worker_processes 4;                               # 设为服务器核心数
# 一个进程绑定一个核心
# worker_cpu_affinity 0001 0010 0100 1000; 
# 查看单个CPU核心数
# grep -c processor /proc/cpuinfo
# 4
# 查看CPU总颗数
# grep 'physical id' /proc/cpuinfo | sort | uniq | wc -l
# 2

2、采用epoll模型

events {
  use epoll;
...

3、调整nginx单个进程运行的最大连接数

worker_rlimit_nofile 65535;       # 最大打开文件数
events {
  worker_connections  4096;       # 最大并发量=worker_connections*worker_processor
...

4、开启高效文件传输模式

http {
  sendfile     on;
  tcp_nopush   on;
  tcp_nodelay  on;
...

5、调整连接超时时间

http {
  keepalive_timeout        60;      # 客户端连接保持会话超过60秒,服务器关闭该连接
  client_header_timeout    15;      # 读取客户端请求头数据超过15秒,服务器返回408错误
  client_body_timeout      15;      # 读取客户端请求主体数据超过15秒,服务器返回408错误
  send_timeout             25;      # 客户端和服务器建立连接超过25秒不发送任何数据,服务器关闭该连接
...

6、上传文件大小限制(动态应用)

http {
  client_max_body_size       8m;
...

7、FastCGI连接参数调优

http {
  fastcgi_connect_timeout    240;
  fastcgi_send_timeout       240;
  fastcgi_read_timeout       240;
  fastcgi_buffer_size        64k;
  fastcgi_buffers 4          64k;
  fastcgi_busy_buffers_size  128k;
  fastcgi_temp_file_write_size  128k;
  # fastcgi_cache_path /data/ngx_fcgi_tmp;       
  fastcgi_cache_path /data/ngx_fcgi_cache levels=2:2;
  keys_zone=ngx_fcgi_cache:512m inactive=1d max_size=40g; 
...

localtion ~.*\.(php|php5)?$ {
  fastcgi_pass  127.0.0.1:9000;
  fastcgi_index  index.php;
  include  fastcgi.conf;
  fastcgi_cache ngx_fcgi_cache;
  fastcgi_cache_valid 200 302 1h;
  fastcgi_cache_valid 301 1d;
  fastcgi_cache_valid any 1m;
  fastcgi_cache_min_users 1;
  fastcgi_cache_use_stale error timeout invalid_header http_500;
  fastcgi_cache_key http://$host$reques uri;
...

8、exprires缓存优化

# expires模块控制nginx服务器应答时的Expires头内容和Cache-Control头的max-age指令,设置缓存有效期
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
  expires      30d;
}
location ~ .*\.(js|css)?$ {
  expires      12h;
}

9、日志优化

# 不记录不需要的访问日志
location ~.*\.(js|jpg|JPG|jpeg|JPEG|css|bmp|gif|GIF)$ {
  access_log off;
}

# 降低日志目录权限
chmod -R 600 /usr/loacl/nginx/logs

10、gzip压缩优化

http {
        gzip on;
        gzip_min_length  1k;
        gzip_buffers     4 16k;
        gzip_http_version 1.1;
        gzip_comp_level 2;
        gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;
        gzip_vary on;
...

 

原文链接:https://yq.aliyun.com/articles/681213
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章