centos

centos apache2如何进行性能调优

小樊
34
2025-09-07 19:43:52
栏目: 智能运维

以下是CentOS Apache2性能调优的关键措施:

一、Apache配置优化

  1. 启用KeepAlive
    减少连接建立开销,在/etc/httpd/conf/httpd.conf中设置:

    KeepAlive On
    MaxKeepAliveRequests 100
    KeepAliveTimeout 5
    
  2. 调整MPM模块参数
    根据服务器资源修改/etc/httpd/conf.modules.d/00-mpm.conf(以prefork为例):

    StartServers 5
    MinSpareServers 5
    MaxSpareServers 10
    MaxRequestWorkers 150  # 根据CPU核心数调整
    MaxConnectionsPerChild 0
    

    高并发场景可切换为workerevent模块(需注释掉prefork配置)

  3. 静态文件缓存
    通过mod_expires减少磁盘访问:

    <IfModule mod_expires.c>
        ExpiresActive On
        ExpiresByType image/jpeg "access plus 1 year"
        ExpiresByType text/css "access plus 30 days"
    </IfModule>
    
  4. 启用压缩
    使用mod_deflate压缩传输数据:

    <IfModule mod_deflate.c>
        AddOutputFilterByType DEFLATE text/html text/css application/javascript
    </IfModule>
    
  5. 优化日志记录
    简化日志格式或降低日志级别:

    CustomLog logs/access_log common
    LogLevel warn
    

二、系统层面优化

  1. 调整内核参数
    修改/etc/sysctl.conf,优化TCP连接和内存管理:

    net.ipv4.tcp_tw_reuse = 1
    net.ipv4.tcp_fin_timeout = 30
    net.core.somaxconn = 1024
    vm.swappiness = 10  # 减少内存交换
    

    执行sysctl -p使配置生效。

  2. 硬件与文件系统

    • 使用SSD硬盘提升I/O性能,日志文件单独挂载到高性能磁盘。
    • 确保服务器有足够内存,避免频繁使用交换空间。

三、模块与安全优化

  1. 禁用不必要的模块
    编辑httpd.conf,注释掉未使用的模块(如mod_rewrite若无需重写规则)。

  2. 启用缓存模块
    mod_cache+mod_disk_cache,缓存动态内容以减轻后端压力。

四、监控与验证

注意:修改配置后需重启Apache服务(systemctl restart httpd),建议先在测试环境验证。[1,2,3,4,5,6,7,8,9,10,11]

0
看了该问题的人还看了