概述Nginx 在高并发场景下可作为反向代理与静态资源服务。本文提供高影响力的配置项与验证流程,确保优化可量化复现。关键参数(已验证)`worker_processes auto;`:自动匹配 CPU 核数,避免手动误配。`worker_connections`:按目标并发与文件句柄上限估算(如 8192–65535,结合 `ulimit -n`)。`keepalive_timeout 15s;`:保持合理连接复用,过长占用资源,过短增加握手。`sendfile on; tcp_nodelay on; tcp_nopush on;`:优化传输与包行为。反向代理与压缩http { gzip on; gzip_types text/plain text/css application/javascript application/json image/svg+xml; gzip_min_length 1024; http2_max_concurrent_streams 128; upstream api_backend { server 10.0.0.11:8080 max_fails=3 fail_timeout=10s; server 10.0.0.12:8080 max_fails=3 fail_timeout=10s; keepalive 64; } server { listen 443 ssl http2; server_name example.com; location /api/ { proxy_http_version 1.1; proxy_set_header Connection ""; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://api_backend; } } } 静态资源与缓存location /static/ { root /var/www/site; expires 7d; add_header Cache-Control "public, max-age=604800"; } 连接与队列`proxy_connect_timeout 3s`、`proxy_read_timeout 30s`:避免长时间阻塞。`upstream keepalive`:复用到后端的连接,降低后端握手开销。验证流程压测工具:`wrk -t4 -c1000 -d60s https://example.com/api`,记录 QPS 与 P95/P99。观察错误与队列:`error_log`、`stub_status` 或 `status` 模块查看活跃连接与丢弃。发布前后对比:同一接口与负载,确认 QPS 与延迟改善。常见误区`keepalive_timeout` 过大导致连接占用与资源泄露风险。未配置 `upstream keepalive`,后端握手压力大。过度压缩图片等已压缩资源,浪费 CPU。结语在合理的连接/线程配置与代理策略下,Nginx 能稳定支撑高并发流量。以压测与监控闭环验证调整效果。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部