Nginx作为高性能Web服务器,通过合理配置可显著提升吞吐量与并发能力。本文从关键参数调优、缓存策略、负载均衡等维度提供优化方案。
1. 基础进程配置优化
调整nginx.conf核心参数:
nginx复制代码
| worker_processes auto; # 自动匹配CPU核心数 | |
|---|---|
| worker_rlimit_nofile 65536; # 提高文件描述符限制 | |
| events { | |
| worker_connections 4096; # 单进程最大连接数(总并发=worker_processes*worker_connections) | |
| multi_accept on; # 同时接受多个新连接 | |
| use epoll; # Linux高并发I/O模型 | |
| } |
2. 连接与传输优化
启用长连接与压缩传输:
nginx复制代码
| http { | |
|---|---|
| keepalive_timeout 15; # 保持连接时间(秒) | |
| client_header_buffer_size 4k; # 请求头缓冲区大小 | |
| large_client_header_buffers 8 16k; # 大请求头缓冲 | |
| gzip on; # 启用Gzip压缩 | |
| gzip_min_length 1k; # 最小压缩文件尺寸 | |
| gzip_types text/plain application/json; # 指定压缩类型 | |
| open_file_cache max=2000 inactive=20s; # 缓存文件元数据 | |
| } |
3. 静态资源加速
通过缓存和内核优化提升静态文件响应:
nginx复制代码
| | location ~* .(jpg|css|js)$ { | | - | -------------------------------------- | | | expires 30d; # 浏览器缓存30天 | | | add_header Cache-Control "public"; | | | open_file_cache_valid 60s; # 内核级缓存验证周期 | | | } |
通过组合硬件升级(如SSD/多核CPU)与软件调优,可构建万级QPS的高性能Web服务节点。对于超大规模场景,建议引入CDN、Redis缓存层及分布式架构扩展。