温馨提示×

为何CentOS Apache慢

小樊
43
2026-08-18 21:04:46
栏目: 智能运维

CentOS 上 Apache 访问慢,通常不是单一原因,而是系统、网络、Apache 配置、应用代码等多个环节叠加。下面按最常见 → 较少见的顺序给你一个系统性排查思路,并给出对应解决方案。


一、最常见原因(优先排查)

1️⃣ DNS 反向解析导致慢(非常常见)

Apache 默认会对客户端 IP 做 反向 DNS 解析,如果 DNS 不通或慢,会导致首包延迟。

✅ 解决:

HostnameLookups Off

httpd.conf 或虚拟主机中修改并重启:

systemctl restart httpd

2️⃣ Apache MPM 模式不合理

CentOS 默认可能是 prefork,不适合高并发。

查看当前 MPM:

httpd -V | grep MPM

✅ 推荐配置(如果是 CPU 较强、内存一般):

<IfModule mpm_event_module>
    StartServers             2
    MinSpareThreads          25
    MaxSpareThreads          75
    ThreadLimit              64
    ThreadsPerChild          25
    MaxRequestWorkers        150
    MaxConnectionsPerChild   1000
</IfModule>

若使用 PHP,建议:

  • Apache + php-fpm
  • MPM = event

3️⃣ PHP 执行慢(最常见于动态站点)

如果是 PHP 网站,Apache 本身可能没问题,而是 PHP 慢。

排查方法:

top
htop

看是否 php / php-fpm 占 CPU 高。

✅ 优化手段:

  • 启用 OPcache
  • 减少慢 SQL
  • 避免 file_get_contents() 外部请求
  • 日志中查慢请求

4️⃣ KeepAlive 设置不合理

长连接数量过多会拖慢新请求。

✅ 推荐配置:

KeepAlive On
KeepAliveTimeout 5
MaxKeepAliveRequests 100

二、系统与资源问题

5️⃣ 内存不足导致 swap

free -h

如果 Swap 被大量使用,性能会严重下降。

✅ 解决:

  • 增加内存
  • 调小 MaxRequestWorkers
  • 禁止 swap(谨慎)
swapoff -a

6️⃣ 磁盘 IO 瓶颈

常见于日志、数据库、session 文件。

查看 IO:

iostat -x 1

✅ 优化:

  • 日志不要同步写
  • session 放入 /dev/shm
  • 数据库放 SSD

7️⃣ SELinux 影响(老系统常见)

getenforce

✅ 临时验证:

setenforce 0

如果明显变快,则需调整 SELinux 策略。


三、网络与外部依赖

8️⃣ 程序访问外部接口慢

如:

  • 调用第三方 API
  • curl 外部地址
  • 发邮件

✅ 排查:

  • 注释外部请求
  • 设置超时时间

9️⃣ 防火墙 / 安全模块

  • mod_security
  • fail2ban
  • iptables / firewalld

✅ 临时关闭测试:

systemctl stop firewalld

四、日志与调试方法(强烈推荐)

查看 Apache 响应时间

LogFormat "%h %l %u %t \"%r\" %>s %b %D" combined_time

%D 是微秒级响应时间。


查看请求阻塞

ss -antp | grep httpd

五、快速自检清单 ✅

你可以按顺序回答这 5 个问题,我可以更精确判断:

  1. 首页慢 还是 所有页面慢
  2. 静态文件(html / css / js)是否也慢?
  3. 使用的是 PHP / Java / Python
  4. 内存 & CPU 使用情况?
  5. CentOS 版本(6 / 7 / 8 / Stream)?

六、典型结论速查表

现象 最可能原因
首访问慢 DNS 反向解析
并发一高就慢 MPM 配置
动态页面慢 PHP / DB
随机慢 IO / swap
有时快有时慢 KeepAlive / 外部请求

如果你愿意,可以贴出:

  • httpd.conf 关键配置
  • top / free -h 输出
  • 网站类型(WordPress / 自研 / API)

我可以直接帮你给出最优优化方案

0