CentOS Apache资源占用过高可按以下步骤优化:
- 优化配置参数
- 调整MPM模块(如prefork/worker/event)的
MaxRequestWorkers、MinSpareServers、MaxSpareServers参数,控制并发进程数。 - 启用
KeepAlive并合理设置MaxKeepAliveRequests和KeepAliveTimeout,减少连接开销。 - 禁用不必要的模块(如
mod_php等),减少内存占用。
- 调整MPM模块(如prefork/worker/event)的
- 启用缓存与压缩
- 使用
mod_cache和mod_disk_cache缓存静态内容,或mod_expires设置缓存策略。 - 启用
mod_deflate压缩传输内容,降低CPU负载。
- 使用
- 系统资源优化
- 增加物理内存或调整交换空间(
swapon/swapoff)。 - 将日志文件、缓存目录迁移到SSD分区,提升I/O性能。
- 增加物理内存或调整交换空间(
- 监控与维护
- 使用
top、htop、apachetop等工具监控资源占用,定位异常进程。 - 定期清理日志文件(如
logrotate)和缓存,释放空间。
- 使用
- 内核参数调优
- 修改
/etc/sysctl.conf,优化fs.file-max、net.ipv4.tcp_tw_reuse等参数,提升并发能力。
- 修改
调整前建议在测试环境验证,避免影响生产服务稳定性[1,2,3,4,5,6,7,8,9,10,11]。