以下是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模塊查看實時狀態。
參考來源: