以下是LNMP中Nginx的配置优化策略:
基础性能优化
worker_processes auto;(按CPU核心数自动设置),worker_cpu_affinity绑定CPU核心(减少进程竞争)。use epoll;(Linux高效事件模型),worker_connections设置为1024-65535(根据服务器资源调整),multi_accept on;(一次接受多个连接)。高效传输与缓存
sendfile on;(减少数据拷贝),gzip on;(压缩响应数据,gzip_comp_level 5-6平衡压缩比与CPU消耗)。expires缓存头(如expires 365d;),add_header Cache-Control "public";。连接与超时管理
keepalive_timeout 65;(减少长连接占用),client_header_timeout/client_body_timeout设为10-30秒。client_max_body_size 20m;(避免大文件上传耗尽内存)。安全与系统级优化
server_tokens off;。--without-模块名减少内存占用。/etc/sysctl.conf,设置net.ipv4.tcp_tw_reuse=1(复用TIME_WAIT连接)、vm.swappiness=10(减少交换分区使用)。高级场景优化
upstream模块配置多后端服务器,使用least_conn或ip_hash算法。ssl_protocols TLSv1.2 TLSv1.3;,配置ssl_buffer_size 8k;减少内存占用。验证与监控:修改后使用nginx -t测试配置,重启服务后通过top、htop监控内存使用,或通过nginx_status模块查看实时状态。
参考来源: