Nginx配置优化

将不同的进程绑定到不同的CPU

假设 cpu 物理核心有 4 个,那么可以如下配置

worker_processes  4; 
worker_cpu_affinity  0001  0010  0100  1000;

单个进程允许的客户端最大连接数

Nginx 默认的最大连接数只有 1024,可以适当的调整大一些

events {
 worker_connections 4096;
}

配置获取更多的连接数

默认情况下,Nginx 进程只会在一个时刻接收一个新的连接,我们可以配置multi_accept 为 on,实现在一个时刻内可以接收多个新的连接,

events {
  multi_accept on;
}

TCP优化

sendfile 配置可以提高 Nginx 静态资源托管效率
tcp_nopush 启用它之后,数据包会累计到一定大小之后才会发送,减小了额外开销,提高网络效率

http {
  sendfile on;
  tcp_nopush on;
}

配置压缩优化

开启静态资源的压缩

http {
  gzip on;
  gzip_buffers 16 8k;
  gzip_comp_level 6;
  gzip_http_version 1.1;
  gzip_min_length 256;
  gzip_proxied any;
  gzip_vary on;
  gzip_types
      text/xml application/xml application/atom+xml application/rss+xml application/  xhtml+xml image/svg+xml
      text/javascript application/javascript application/x-javascript
      text/x-json application/json application/x-web-app-manifest+json
      text/css text/plain text/x-component
      font/opentype font/ttf application/x-font-ttf application/vnd.ms-fontobject
      image/x-icon;
  gzip_disable "MSIE [1-6].(?!.*SV1)";
}

日志开启缓存,减少磁盘压力

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    '$status $body_bytes_sent "$http_referer" '
    '"$http_user_agent" "$http_x_forwarded_for"';

access_log  /var/log/nginx/access.log main buffer=64k flush=30s;

关闭服务器版本

http {
  server_tokens off;
}
原文地址:https://www.cnblogs.com/manastudent/p/12957567.html