木杉笔记

记录后端、运维与数据库的踩坑日常

Nginx 几个容易被忽略的性能参数

2026-09-12运维

说到 Nginx 调优,网上翻来覆去就是那几个:worker_processes、worker_connections、keepalive_timeout。这些当然有用,但真正在压测里救过我的,反而是两个不太被提起的参数。

client_body_buffer_size

默认是 8k 或 16k。如果你的接口经常收到几十 KB 的 JSON,超出部分会被写到临时文件里,然后再读回来 —— 磁盘 IO 直接翻倍。

client_body_buffer_size 128k;
client_max_body_size    16m;

改完之后,我们那个上传接口的 P99 从 210ms 掉到了 90ms 左右。纯配置改动,不动代码。

open_file_cache

静态文件服务必开。每次请求都去 stat 一遍文件,文件一多就是灾难。

open_file_cache          max=10000 inactive=30s;
open_file_cache_valid    60s;
open_file_cache_min_uses 2;
open_file_cache_errors   on;

别忘了压测

所有参数改完都要重新压。我们第一次调的时候把 keepalive_timeout 从 65 调到 15,结果 QPS 反而降了 —— 因为客户端复用连接的成本变高了。

调参不是越激进越好,是找到你那个业务场景的甜点。