优化Ubuntu上Nginx内存使用可从以下方面入手:
worker_processes auto;
使其自动匹配CPU核心数。events
块中设置worker_connections
(如1024-4096),根据内存调整。client_body_buffer_size
(如4k-8k)、proxy_buffer_size
等参数,避免内存浪费。keepalive_timeout
(如15-30秒),减少长连接占用内存。open_file_cache
缓存静态文件,或配置proxy_cache
缓存代理内容。/etc/sysctl.conf
,设置vm.swappiness=10-30
,减少交换分区使用。sendfile
和tcp_nopush
,减少内存拷贝开销。--without-模块名
禁用不需要的模块(如邮件模块),降低内存占用。top
、htop
或nginx -s status
监控内存使用,定期重启Nginx释放内存。参考来源: