1.
常见故障概述与排查流程
(1)确认故障范围:页面错误(5xx/4xx)、连接超时、丢包或延迟上升。
(2)优先级判定:是否影响业务峰值、是否为单点或全站故障。
(3)基本检查清单:ping/ traceroute / mtr / dig 检查网络与DNS。
(4)查看系统日志:/var/log/nginx/error.log、/var/log/messages、应用日志。
(5)快速恢复措施:切换流量到备用节点、启用缓存或临时403限流。
(6)记录与回溯:保留故障时刻的监控图与tcpdump包以便后续分析。
2.
网络与DNS排查要点(台湾节点特殊注意)
(1)DNS解析:使用 dig +short @8.8.8.8 domain.com 与本地resolver对比,检查TTL与解析异步。
(2)线路探测:mtr -r -c 100 ip,定位丢包点(ISP/国际链路/机房)。
(3)带宽与丢包:使用 iperf3 测速,确认上行/下行与机房带宽承诺(例如1Gbps)。
(4)防火墙与端口:ss -tunapl / iptables -L 检查端口被block或策略误杀。
(5)域名/证书:确认A/AAAA记录、CAA与Let's Encrypt证书是否过期。
(6)本地用户体验:在台湾本地或使用台湾节点的测速工具检查CDN点是否命中。
3.
系统资源监控与IO/CPU瓶颈定位
(1)实时监控:top/htop、vmstat、iostat -x 1 3,定位CPU/IO等待(%wa)与负载。
(2)内存与swap:free -m,确认内存占用与是否发生swap导致延迟。
(3)磁盘性能:fio或dd测试随机读写IOPS与延迟,SSD与NVMe差异需关注。
(4)网络连接数:ss -s 与 ss -n state syn-recv,查看半开连接与SYN洪泛。
(5)系统参数调整示例:sysctl -w net.core.somaxconn=1024;net.ipv4.tcp_tw_reuse=1。
(6)监控工具建议:Prometheus + node_exporter + Grafana,保留7天指标便于回溯。
4.
Web服务与数据库性能优化实操
(1)Nginx调优:worker_processes auto;worker_connections 4096;keepalive_timeout 15。
(2)PHP-FPM示例:8GB内存服务器,设置pm = dynamic,pm.max_children = 120(视单进程内存调整)。
(3)MySQL/InnoDB示例:8GB节点,innodb_buffer_pool_size = 6G,query_cache_size = 0,慢查询日志开启。
(4)缓存层:启用Redis与本地页面缓存,减少数据库qps,Redis内存示例:1GB用于热点缓存。
(5)连接池与持久连接:使用连接池减少频繁建立TCP/DB连接开销。
(6)压测与基线:使用 ab 或 wrk 做RPS压力测试,并记录响应时间P50/P95/P99。
5.
CDN部署与DDoS防护策略
(1)CDN策略:静态资源走CDN,动态API走就近回源,设置合理Cache-Control与Cache Key。
(2)多节点与负载均衡:在台湾部署至少两可用区节点,使用L7或L4负载均衡。
(3)DDoS防护:启用SYN cookies、rate-limit、iptables/nftables限速与cloud-provider流量清洗。
(4)WAF与黑名单:配置WAF规则阻断常见攻击,并用fail2ban封禁恶意IP。
(5)带宽保护:与机房确认“峰值清洗”方案(例如ISP提供流量清洗),并设置告警阈值(如带宽使用80%触发)。
(6)日志与溯源:保留边缘日志(CDN/NGINX)以便在攻击后分析攻击向量。
6.
真实案例:台湾电商促销高峰故障与优化结果
(1)故障背景:某台湾电商促销期间出现大量502/504,峰值RPS 1800,用户延迟上升至3s。
(2)原始配置:4 vCPU / 8GB RAM / 100GB SSD / 1Gbps带宽,单点回源在台北机房。
(3)排查过程:mtr发现国际链路丢包,top显示php-fpm全部占满,MySQL慢查询频发。
(4)采取措施:增加一台同配置备用节点,启用CDN缓存图片与JS,Redis缓存会话,调整innodb_buffer_pool_size=6G,php-fpm pm.max_children=100。
(5)效果数据(优化前后对比)如下表:
| 指标 | 优化前 | 优化后 |
| 峰值RPS | 1800 | 1800 |
| 平均响应时间 P95 | 3000 ms | 420 ms |
| CPU平均占用 | 95% | 55% |
| 数据库慢查询数 | 120/min | 8/min |
| 错误率(5xx) | 12% | 0.6% |
(6)总结建议:定期做压测、开启完整监控、对台湾节点关注链路质量并使用多点回源与CDN结合,DDoS需与运营商预案配合。以上方法可作为云服务器/台湾服务器日常故障排查与性能优化的落地清单。
来源:云服务器台湾服务器常见故障排查与性能优化实操方法