首页主机资讯centos lamp环境如何优化

centos lamp环境如何优化

时间2025-12-20 02:43:04发布访客分类主机资讯浏览1050
导读:CentOS LAMP 环境优化实操指南 一 系统层面优化 资源与内核 提升文件描述符与进程上限:在 /etc/security/limits.conf 增加 soft/hard nofile 65535 soft/har...

CentOS LAMP 环境优化实操指南

一 系统层面优化

  • 资源与内核
    • 提升文件描述符与进程上限:在 /etc/security/limits.conf 增加
        • soft/hard nofile 65535
        • soft/hard nproc 65535
      • mysql/apache soft/hard nofile 65535
      • /etc/sysctl.conf 增加 fs.file-max = 1000000 并执行 sysctl -p
    • 网络与连接
      • 建议值:net.ipv4.tcp_tw_reuse=1net.ipv4.tcp_tw_recycle=0(NAT/负载均衡环境务必为0)、net.ipv4.tcp_fin_timeout=30net.ipv4.tcp_keepalive_time=600net.ipv4.tcp_keepalive_intvl=30net.ipv4.tcp_keepalive_probes=3net.ipv4.ip_local_port_range=1024 65000net.core.somaxconn=4096net.ipv4.tcp_max_syn_backlog=4096net.core.netdev_max_backlog=30000net.ipv4.tcp_max_orphans=262144net.ipv4.tcp_syncookies=1
    • 内存与I/O
      • 降低换页:vm.swappiness=10;脏页刷写:vm.dirty_background_ratio=5vm.dirty_ratio=10
      • 文件系统:优先 XFS/ext4,挂载加 noatime;SSD 建议使用 noop/deadline 调度器(如:echo noop > /sys/block/sda/queue/scheduler)。
    • 基础运维
      • 保持系统与软件包更新(yum/dnf update),关闭不必要服务,精简开机自启,配置 firewalld 仅放行 80/443(数据库端口仅内网开放)。

二 Apache 优化

  • MPM 选择与进程模型
    • 优先使用 Event MPM(高并发下资源占用更优):在 /etc/httpd/conf.modules.d/00-mpm.conf 启用 LoadModule mpm_event_module modules/mod_mpm_event.so
  • 核心参数建议(按内存与并发目标调整)
    • 示例:
      • Timeout 30
      • KeepAlive OnMaxKeepAliveRequests 100KeepAliveTimeout 2
      • ServerLimit 256StartServers 8MinSpareThreads 64MaxSpareThreads 256ThreadsPerChild 64MaxRequestWorkers 2048MaxConnectionsPerChild 10000
    • 静态资源加速:EnableSendfile On;启用压缩 mod_deflate(压缩级别 6,对 text/html、text/css、application/javascript、application/json 等生效)。
    • 日志与模块:减少同步磁盘写入(如 rotatelogs 按日切分)、关闭无用模块(如 HostnameLookups Off)。

三 MySQL MariaDB 优化

  • InnoDB 缓冲与连接
    • 将大部分内存分配给 InnoDB:innodb_buffer_pool_size ≈ 物理内存的 60%–75%(DB 专用场景)。
    • 连接与会话:max_connections(结合应用峰值设定,如 1000 起步)、back_log=512max_connect_errors=10000
  • 缓存与引擎
    • 查询缓存:在 MySQL 5.7 可开启 query_cache_type=1/2 与合理 query_cache_size;在 MySQL 8.0 查询缓存已移除,建议以应用层缓存替代。
    • 存储引擎:优先 InnoDB,按需配置 innodb_log_file_sizeinnodb_flush_log_at_trx_commit(权衡持久性与性能)。

四 PHP 与缓存加速

  • PHP 运行时
    • 使用 PHP-FPM 并优化进程模型(动态/按需),合理设置 pm.max_children / pm.start_servers / pm.min_spare_servers / pm.max_spare_servers
    • 启用 OPcache(生产务必开启),禁用不必要的 PHP 模块,减少安全风险与内存占用。
  • 数据与应用层缓存
    • 引入 Redis/Memcached 做对象/页面片段缓存,减轻数据库与后端压力。
    • 静态资源与全页加速:部署 VarnishNginx 反向代理缓存;启用 mod_deflate 压缩传输。

五 监控验证与安全加固

  • 监控与压测
    • 监控:top/vmstat/iostat/netstat、日志轮转(如 rotatelogs)、慢查询日志(MySQL)、应用性能监控(如 APM)。
    • 压测:使用 abwrksysbench 进行基线测试与回归验证,逐步调参。
  • 安全与合规
    • 防火墙仅放行 80/443(数据库端口内网访问),定期更新补丁;SELinux 建议保持 Enforcing 并做策略调优,而非直接关闭。
  • 变更与回滚
    • 任何参数调整前先备份配置与数据,先在测试环境验证,分阶段上线并保留回滚方案。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos lamp环境如何优化
本文地址: https://pptw.com/jishu/776987.html
centos lamp部署有哪些技巧 centos lamp日志如何分析

游客 回复需填写必要信息