centos lamp怎样优化网络连接
导读:CentOS LAMP 网络连接优化实操指南 一 系统内核与网络参数优化 更新系统与内核参数,提升 TCP 并发与稳定性(/etc/sysctl.conf): 连接与端口: net.ipv4.tcp_syncookies=1 net....
CentOS LAMP 网络连接优化实操指南
一 系统内核与网络参数优化
- 更新系统与内核参数,提升 TCP 并发与稳定性(/etc/sysctl.conf):
- 连接与端口:
- net.ipv4.tcp_syncookies=1
- net.ipv4.ip_local_port_range=1024 65535
- net.ipv4.tcp_max_syn_backlog=8192
- net.core.somaxconn=65535
- net.core.netdev_max_backlog=65535
- 快速回收与超时:
- net.ipv4.tcp_tw_reuse=1
- net.ipv4.tcp_fin_timeout=30
- net.ipv4.tcp_synack_retries=2
- net.ipv4.tcp_syn_retries=5
- 生效命令:sudo sysctl -p
- 连接与端口:
- 可选:在 NAT/负载均衡 前端或高并发短连接场景,部分环境会启用 net.ipv4.tcp_tw_recycle(注意与 TIME_WAIT 回收相关的兼容性问题,生产前充分测试)。
- 持久化网络接口队列与驱动队列,编辑网卡配置(如 /etc/sysconfig/network-scripts/ifcfg-ens33 或 eth0),确保:
- 队列相关参数由驱动/系统自动设置,避免人为过小导致丢包(如 txqueuelen 保持默认或按网卡建议值设置)。
- 应用层与内核协同:
- 调整 vm.swappiness=10、vm.dirty_background_ratio=5、vm.dirty_ratio=10,减少抖动与写放大,降低网络写路径阻塞概率。
二 网络与安全基础配置
- 使用有线连接与高性能网卡,优先保证链路稳定与带宽;云上优先选择更高规格实例与增强型网卡。
- 配置静态 IP(示例为 ifcfg-ens33):
- BOOTPROTO=static;IPADDR=your-ip;PREFIX=24;GATEWAY=your-gw;DNS1=8.8.8.8;DNS2=1.1.1.1;ONBOOT=yes
- 重启网络:sudo systemctl restart network(或使用 nmcli/ifup 等对应工具)
- 防火墙仅放行必要端口(firewalld):
- sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
- sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
- 如需数据库仅内网访问:sudo firewall-cmd --zone=public --add-rich-rule=‘rule family=“ipv4” source address=“192.168.1.0/24” port port=“3306” protocol=“tcp” accept’ --permanent
- 重载:sudo firewall-cmd --reload
- 安全建议:仅开放 22/80/443 等必要端口;数据库端口(如 3306)默认不对外暴露;必要时启用 SELinux 的 Web 策略而非直接关闭。
三 Apache 与 PHP 网络相关优化
- 启用并优化持久连接与并发:
- KeepAlive=On
- MaxKeepAliveRequests=100(按并发与对象大小调优)
- KeepAliveTimeout=5(避免过长占用连接)
- MaxRequestWorkers(或 MaxClients)=依据 内存/并发模型 设定,避免超过系统可承载的文件句柄与端口范围
- 启用压缩与头部压缩(mod_deflate/mod_brotli)减少传输字节数与时延。
- 启用 HTTP/2(需 mod_http2 与 TLS),多路复用降低队头阻塞,提高并发吞吐。
- PHP 侧:
- 启用 OPcache(生产务必开启),合理设置 opcache.memory_consumption、opcache.interned_strings_buffer、opcache.max_accelerated_files、opcache.validate_timestamps(生产建议关闭自动校验,采用灰度发布/重启更新)。
- 减少不必要的模块与扩展,降低请求初始化开销。
四 数据库与缓存层优化
- MySQL/MariaDB(/etc/my.cnf 或 /etc/my.cnf.d/*.cnf):
- innodb_buffer_pool_size=系统内存的50%–80%(DB 专用场景)
- max_connections 与 back_log 结合并发与内核 somaxconn 调整
- 合理设置 query_cache_type/query_cache_size(注意在写多场景的收益与开销)
- 应用层缓存与反向代理:
- 启用 Varnish 或 Nginx 反向代理缓存,缓存静态资源与可缓存的页面片段,显著降低后端连接压力与网络往返。
- 使用 Memcached/Redis 做数据对象缓存,减少数据库网络往返与查询耗时。
五 监控验证与容量规划
- 基线测试与带宽评估:
- 使用 iperf3 做吞吐与抖动基线(服务器端:iperf3 -s;客户端:iperf3 -c server_ip -P 4),验证网卡、链路与内核参数是否达到预期。
- 实时流量与连接分析:
- iftop(按连接/端口看带宽占用)、nload(网卡总吞吐)、nethogs(按进程看带宽),快速定位异常连接与突发流量来源。
- 日志与告警:
- 定期检查 /var/log/messages、/var/log/httpd/access_log|error_log、/var/log/mysql/mysqld.log,对 SYN 重试、连接超时、连接拒绝、慢查询 建立阈值告警与回溯分析。
- 变更流程:
- 任何参数调整先在测试环境验证,逐步灰度上线;每次变更保留回滚方案与变更记录,持续观察 RT、P95/P99、连接数、丢包率、重传率 等关键指标。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos lamp怎样优化网络连接
本文地址: https://pptw.com/jishu/747821.html
