温馨提示×

centos nginx资源占用优化

小樊
86
2025-02-13 09:27:02
栏目: 智能运维
Centos服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

优化Nginx在CentOS上的资源占用可以从多个方面入手,包括内核参数调整、Nginx配置优化、文件描述符限制、静态资源服务等。以下是详细的优化措施:

内核参数优化

  • 调整TCP连接参数

    • net.ipv4.tcp_max_tw_buckets = 6000:减少TIME_WAIT状态的连接占用。
    • net.ipv4.tcp_tw_recycle = 1(官方不建议修改):快速回收TIME_WAIT状态的连接。
    • net.ipv4.tcp_tw_reuse = 1:启用TIME_WAIT状态的连接重用。
    • net.ipv4.tcp_syncookies = 1:防止SYN flood攻击。
  • 调整文件描述符和连接数限制

    • 编辑 /etc/sysctl.conf 文件,增加如下内容:

      fs.file-max = 10000000
      fs.nr_open = 10000000
      net.core.somaxconn = 65535
      net.ipv4.tcp_max_syn_backlog = 65535
      
    • 应用配置:

      sysctl -p
      

Nginx配置优化

  • 调整工作进程和连接数

    • worker_processes auto;:根据CPU核心数自动设置工作进程数。
    • worker_connections 1024;:每个工作进程最多处理1024个连接。
  • 启用高效传输模式

    • sendfile on;:启用sendfile,提升传输效率。
    • tcp_nopush on;:对于大文件传输,采用tcp_nopush多个包一起发送。
  • 启用Gzip压缩

    • 减少网络传输消耗:

      http {
          gzip on;
          gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
      }
      
  • 静态资源缓存

    • 缓存静态文件,减少对后端服务器的请求:

      server {
          location ~* \.(jpg|jpeg|png|gif|ico|css|js|pdf)$ {
              expires 30d;
              access_log off;
          }
      }
      
  • 启用HTTP/2协议

    • 利用多路复用和头部压缩提高页面加载速度:

      server {
          listen 443 ssl http2;
      }
      
  • 优化SSL/TLS

    • 合理配置SSL/TLS协议,提高安全性和性能:

      server {
          ssl_protocols TLSv1.2 TLSv1.3;
          ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
          ssl_prefer_server_ciphers on;
      }
      

其他优化措施

  • 限制请求速率和连接数

    • 防止恶意请求占用资源:

      limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
      location / {
          limit_req zone=one burst=5;
      }
      
  • 监控和日志管理

    • 使用工具如Prometheus + Grafana、Zabbix等监控磁盘空间,并设置告警阈值。

通过这些优化措施,可以显著降低Nginx在CentOS上的资源占用,提高其性能和稳定性。根据实际应用场景,可以灵活调整配置,以达到最佳效果。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:LNMP在CentOS上的资源占用情况如何

0