worker_processes
:设为CPU核心数或auto
。worker_connections
:单进程最大连接数,建议1024-65535,需结合系统限制调整。keepalive_timeout
:缩短至30-60秒,减少空闲连接占用内存。client_body_buffer_size
:常规设为8-32k,大文件可增大。proxy_buffer_size
/proxy_buffers
:代理场景按需调整,避免内存浪费。expires
指令设置长期缓存,减少重复请求。proxy_cache_path
配置缓存路径,降低后端压力。open_file_cache
缓存文件元数据,减少磁盘IO。/etc/sysctl.conf
: net.ipv4.tcp_tw_reuse=1
:快速回收TIME_WAIT连接。vm.swappiness=10
:减少内存交换,优先使用物理内存。sysctl -p
使配置生效。--without-模块名
移除冗余模块(如不使用SSL时禁用ngx_http_ssl_module
)。top
/htop
监控内存使用,定位异常进程。nginx-module-vts
或Valgrind
检测内存泄漏。sudo systemctl restart nginx
。参考来源: