优化系统内核参数,提升消息处理与网络性能
调整内核参数是提升CentOS系统消息处理能力和网络效率的基础。通过修改/etc/sysctl.conf文件,可优化以下关键参数:
kernel.msgmnb(每个消息队列的大小,单位:字节,建议设为65536)、kernel.msgmni(系统最大消息队列数量,建议设为16以上)、kernel.msgmax(单个消息的最大size,建议设为65536),以支持更高并发的消息传递。net.core.somaxconn(listen函数的挂起请求最大数量,建议设为65535)、net.ipv4.tcp_max_syn_backlog(SYN队列长度,建议设为65535)、net.ipv4.tcp_tw_reuse(允许复用TIME_WAIT状态的连接,设为1)、net.ipv4.tcp_fin_timeout(TIME_WAIT状态的超时时间,建议设为30秒),减少网络延迟并提高连接利用率。vm.swappiness(swap使用倾向,建议设为10以下),减少内存不足时对swap的依赖,提升系统响应速度。sysctl -p使配置生效。使用高性能缓存技术,减少重复计算与IO
缓存是提升网站速度的关键手段,可显著减少数据库查询、磁盘IO等耗时操作:
yum install redis),将其用作数据库查询缓存(如将热门商品信息、用户会话数据存入Redis),或作为消息队列(通过list结构处理异步任务,如发送邮件、生成报表)。Redis的高性能内存存储能有效降低后端服务的压力。mod_expires模块设置静态文件(CSS、JS、图片)的缓存时间(如ExpiresByType text/css "access plus 30 days"),让浏览器缓存这些文件,减少重复请求。mod_deflate模块,对HTML、CSS、JS等文本文件进行Gzip压缩(AddOutputFilterByType DEFLATE text/html text/css application/javascript),减小传输数据量,提升加载速度。优化Apache服务器配置,提高并发处理能力
Apache的配置直接影响网站并发性能,需调整以下参数:
httpd.conf中设置KeepAlive On、MaxKeepAliveRequests 100、KeepAliveTimeout 5,减少客户端与服务器之间的TCP连接建立/关闭开销,提升页面内多个资源的加载效率。prefork MPM(适合小型站点),若站点并发量高,可切换至event MPM(更适合高并发)。编辑/etc/httpd/conf.modules.d/00-mpm.conf,调整参数:StartServers 5、MinSpareServers 5、MaxSpareServers 10、MaxRequestWorkers 150(根据服务器CPU核心数和内存调整,如4核8G内存可设为MaxRequestWorkers 150)。common(CustomLog logs/access_log common),并将日志级别调整为warn(LogLevel warn),减少日志写入对系统性能的影响。优化数据库操作,减少响应延迟
数据库是网站的性能瓶颈之一,需通过以下方式优化:
EXPLAIN分析慢查询,添加合适的索引(如对经常用于查询的字段建索引),避免全表扫描;减少子查询、JOIN操作的复杂度,提升查询效率。query_cache_type=1、query_cache_size=64M),缓存常用查询结果,减少重复查询的开销。其他辅助优化措施
systemctl stop firewalld(临时关闭)、systemctl disable firewalld(永久禁用)关闭不必要的服务(如防火墙,若使用云服务商的安全组替代),减少系统资源占用。logrotate工具配置日志轮转(如/etc/logrotate.conf中设置rotate 7,保留7天日志),避免日志文件过大占用磁盘空间。