CentOS LAMP资源优化技巧
LAMP(Linux、Apache、MySQL、PHP)是常见的Web服务栈,优化其资源利用率需从硬件、系统内核、服务配置、缓存机制、文件系统、监控维护等多维度入手,以下是具体技巧:
/etc/sysctl.conf
,设置vm.swappiness=10
(降低交换分区使用,优先使用物理内存)、vm.dirty_background_ratio=5
(后台脏页刷新阈值)、vm.dirty_ratio=10
(前台脏页刷新阈值),优化内存与磁盘交换效率。net.ipv4.tcp_tw_reuse=1
(重用TIME-WAIT连接)、net.ipv4.tcp_max_syn_backlog=8192
(增加SYN队列长度)、net.core.somaxconn=1024
(提升监听端口队列容量),减少连接建立延迟。sysctl -p
加载修改后的参数。a2dismod
命令禁用未使用的模块(如autoindex
、status
),减少内存占用。MaxKeepAliveRequests=100
(限制持久连接数量)、KeepAliveTimeout=2
(缩短空闲连接保持时间),平衡并发性能与资源消耗。MaxClients
(如2GB内存设置为600),避免过多进程导致内存耗尽;若内存有限,可关闭KeepAlive
特性。innodb_buffer_pool_size
为物理内存的50%-70%(如4GB内存设置为2GB),缓存InnoDB表数据和索引,减少磁盘I/O。EXPLAIN
分析慢查询,添加合适索引(如主键、联合索引),避免全表扫描;定期执行OPTIMIZE TABLE
整理碎片。query_cache_type=1
、query_cache_size=64M
(缓存SELECT查询结果),提升重复查询效率(注意:高并发写入场景需谨慎开启)。php.ini
注释未使用的模块(如xdebug
、gd
(若无需图片处理)),减少内存和CPU开销。OPcache
扩展(yum install php-opcache
),设置opcache.enable=1
、opcache.memory_consumption=128
,缓存编译后的PHP脚本,避免重复解析。Varnish
(yum install varnish
),配置为前端反向代理,缓存静态页面(如HTML、CSS),减轻Apache负载;设置TTL
(Time-To-Live)控制缓存有效期。Memcached
(yum install memcached
)或Redis
(yum install redis
)缓存动态数据(如用户会话、数据库查询结果),提升数据访问速度。XFS
(支持高并发、大文件)或ext4
(兼容性好)文件系统,格式化时添加noatime
挂载选项(不更新文件访问时间),减少磁盘写操作。fsck
修复文件系统错误,确保数据完整性。top
(查看进程资源占用)、htop
(可视化监控)、vmstat
(查看内存、CPU、IO状态)、iostat
(查看磁盘IO)等工具,定期检查系统性能。Zabbix
、Prometheus+Grafana
等监控平台,设置内存使用率(如80%报警)、CPU负载(如4核CPU负载超过3)等阈值,及时通知管理员处理。cronolog
工具分割Apache/Nginx日志(如按天分割),避免日志文件过大占用磁盘空间。systemctl stop firewalld
停止防火墙(测试环境)、systemctl disable firewalld
禁用开机启动;关闭SELinux(setenforce 0
)或配置合理规则(如允许HTTP/HTTPS端口),减少安全策略对性能的影响。yum update -y
更新系统和软件包,修复已知漏洞,提升稳定性和性能。