CentOS LAMP性能调优秘籍
以下是CentOS LAMP(Linux+Apache+MySQL+PHP)性能调优的核心秘籍,涵盖硬件、系统、服务及监控层面:
一、硬件与系统基础优化
- 硬件升级:采用SSD存储替代HDD,增加内存和CPU核心数,提升I/O和计算效率。
- 内核参数调优:
- 编辑
/etc/sysctl.conf
,设置vm.swappiness=10
减少交换,net.ipv4.tcp_tw_reuse=1
优化TCP连接复用。 - 调整文件句柄限制:修改
/etc/security/limits.conf
,增大nofile
值以支持高并发。
- 编辑
二、Apache性能优化
- 配置多处理模块(MPM):
- 动态内容选
worker
/event
模式,静态内容选prefork
,调整MaxRequestWorkers
(建议设置为内存的10%-15%)。
- 动态内容选
- 启用缓存与压缩:
mod_cache
+mod_disk_cache
缓存静态内容,mod_deflate
启用Gzip压缩减少传输体积。
- 连接优化:
- 启用
KeepAlive
并设置MaxKeepAliveRequests=100
、KeepAliveTimeout=5
,平衡连接复用与资源占用。
- 启用
三、MySQL/MariaDB优化
- 内存与缓存配置:
innodb_buffer_pool_size
设为服务器内存的50%-80%,innodb_log_file_size
设为256M-512M。- 启用查询缓存:
query_cache_type=1
,query_cache_size=64M
(注意:MySQL 8.0+已移除查询缓存,需用应用层缓存替代)。
- 索引与查询优化:
- 为高频查询字段创建索引,避免全表扫描;使用
EXPLAIN
分析慢查询。
- 为高频查询字段创建索引,避免全表扫描;使用
- 并发与日志:
- 调整
max_connections
匹配服务器负载,关闭不必要的二进制日志(如非主从复制场景)。
- 调整
四、PHP性能优化
- 启用OPcache:
- 安装
php-opcache
,在php.ini
中设置opcache.enable=1
,opcache.memory_consumption=128
(根据内存调整)。
- 安装
- 代码级优化:
- 减少函数嵌套,使用高效的数据结构;避免
SELECT *
,只查询必要字段。
- 减少函数嵌套,使用高效的数据结构;避免
- 配置优化:
- 调整
php.ini
中memory_limit
(如256M)、max_execution_time
,关闭display_errors
生产环境。
- 调整
五、缓存与架构优化
- 应用层缓存:
- 使用Memcached/Redis缓存数据库查询结果,减少重复查询。
- HTTP缓存:
- 通过
mod_expires
设置静态文件缓存时间(如CSS/JS缓存1年),降低服务器负载。
- 通过
- 负载均衡(高并发场景):
- 使用Nginx反向代理+Keepalived实现负载均衡,分散Apache压力。
六、监控与持续调优
- 工具部署:
- 用
top
/htop
监控CPU/内存,vmstat
/iostat
分析系统负载,mysqltuner
优化数据库参数。
- 用
- 日志分析:
- 定期查看Apache错误日志(
/var/log/httpd/error_log
)和MySQL慢查询日志,定位性能瓶颈。
- 定期查看Apache错误日志(
注意事项
- 每次优化前备份配置文件,测试环境验证后再应用到生产环境。
- 避免过度优化,优先保证系统稳定性,根据实际业务负载动态调整参数。
参考来源:[1,2,3,4,6,7,8,9,10,11,12,13,14]
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权请联系我们,一经查实立即删除!