溫馨提示×

Ubuntu下nginx性能如何優化

小樊
42
2025-07-12 04:46:38
欄目: 智能運維

在Ubuntu下優化Nginx性能可以通過多種方法實現,主要包括進程模型調優、傳輸效率優化、緩存策略優化、操作系統調優等。以下是詳細的優化措施:

  1. 進程模型調優

    • worker_processes auto;:自動匹配CPU核心數。
    • worker_cpu_affinity auto;:CPU親和性綁定。
    • worker_rlimit_nofile 65535;:突破系統文件限制。
    • events { worker_connections 4096; }:單個進程承載連接數。
    • multi_accept on;:批量接收新連接。
    • use epoll;:使用高效事件模型。
  2. 傳輸效率優化

    • client_body_buffer_size 16k;:請求體緩沖區大小。
    • client_header_buffer_size 4k;:請求頭緩沖區大小。
    • large_client_header_buffers 4 32k;:超大請求頭處理。
    • client_max_body_size 20m;:最大上傳文件限制。
    • client_body_timeout 30s;:請求體超時時間。
    • sendfile on;:零拷貝傳輸。
    • tcp_nopush on;:合并數據包發送。
  3. 壓縮配置

    • gzip on;:啟用壓縮。
    • gzip_min_length 1k;:超過1KB才壓縮。
    • gzip_comp_level 4;:壓縮級別(1-9)。
    • gzip_types text/plain application/xml application/json;:壓縮文件類型。
    • gzip_vary on;:兼容老舊代理服務器。
  4. 緩存策略優化

    • 靜態資源緩存:
      • location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { expires 365d; }:開啟內存緩存。
      • add_header Cache-Control "public, max-age=31536000";。
      • open_file_cache max=1000 inactive=20s;。
      • open_file_cache_valid 30s;。
      • open_file_cache_min_uses 2;。
    • 代理緩存加速:
      • proxy_cache_path /data/nginx/cache levels=1:2 keys_zone=my_cache:10m max_size=10g;。
      • location / { proxy_cache my_cache; }。
  5. 操作系統調優

    • 內核參數調整:
      • net.core.somaxconn = 65535;:最大待處理數據包。
      • net.ipv4.ip_local_port_range = 1024 65535;:臨時端口范圍。
      • net.ipv4.tcp_tw_reuse = 1;:快速回收TIME-WAIT連接。
      • net.ipv4.tcp_tw_recycle = 1;:最大打開文件數。
      • fs.file-max = 209;。
  6. 其他優化建議

    • 啟用HTTP/2:
      • listen 443 ssl http2;:啟用HTTP/2協議。
      • ssl_protocols TLSv1.2 TLSv1.3;:僅保留安全協議。
      • ssl_session_cache shared:SSL:10m;:會話復用配置。

通過這些優化措施,可以顯著提升Nginx在Ubuntu上的性能,從而更好地服務于用戶。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女