启用持久连接
mod_dbd模块,配置数据库持久连接(如MySQL的p:前缀连接字符串),减少连接创建开销。DBDExptime指令设置空闲连接保持时间(如30秒),避免无效连接占用资源。配置连接池
Apache Commons DBCP等连接池工具,设置合理的initialSize(初始连接数,建议5-10)、maxTotal(最大连接数,根据并发量调整,如50-200)、minIdle(最小空闲连接数,建议5-10)等参数。testOnBorrow/testWhileIdle)和验证查询(如SELECT 1),确保连接有效性。优化Apache参数
MaxKeepAliveRequests(建议100-500)和KeepAliveTimeout(建议5-10秒),平衡并发连接和资源占用。mod_cache和mod_cache_disk缓存静态内容,减少对数据库的直接请求。数据库端优化
innodb_buffer_pool_size(设置为物理内存的50%-80%)、max_connections(与Apache并发量匹配)。OPTIMIZE TABLE整理碎片。系统级优化
vm.swappiness=1、net.ipv4.tcp_tw_reuse=1),优化网络连接复用。监控与调优
top、htop监控系统资源,通过SHOW STATUS LIKE 'Threads_connected'查看数据库连接状态。注意:修改配置前需备份文件,建议在测试环境验证后再部署到生产环境。
参考来源:[1,2,3,4,5,6,7,9,10,11]