以下是Nginx性能调优的核心技巧,涵盖系统、配置、缓存等多方面:
fs.file-max=1000000,避免连接数受限。net.core.somaxconn=65535(连接队列长度)、tcp_tw_reuse=1(复用TIME_WAIT连接)。worker_processes auto;(按CPU核心数自动配置)。worker_connections 10240;(单进程最大连接数,需结合系统限制)。epoll事件模型(Linux)和multi_accept on,提升连接处理效率。sendfile on(零拷贝传输)、tcp_nopush on(优化数据包发送)。expires 30d; + open_file_cache(减少磁盘IO)。gzip on; gzip_types text/css application/json;,压缩级别建议6。listen 443 ssl http2;,提升多路复用效率。keepalive_timeout(建议30秒)、proxy_connect_timeout(避免后端超时)。keepalive_requests 1000,防止资源耗尽。upstream模块配置多后端服务器,结合least_conn(最少连接)算法均衡负载。proxy_http_version 1.1; proxy_set_header Connection "";。server_tokens off;,降低信息泄露风险。access_log off;或buffer=32k)。proxy_cache),减少后端压力。limit_req_zone + burst参数,防止恶意刷接口。ab(Apache Benchmark)、wrk、vegeta,模拟高并发场景。nginx -T查看配置、htop监控系统资源、Prometheus+Grafana可视化指标。注意:每次修改配置后需执行nginx -t测试语法,生产环境建议灰度发布并逐步验证。
参考来源: