首先需要做“可复现的性能验证”。从多个不同客户端(本地、国内不同省份或其他云节点)对目标实例运行基础网络测试:ping、traceroute/mtr、iperf3(带并发测试)。若出现高延迟、抖动或丢包集中在互联网路径(如某一跳),则偏向于链路问题;若链路稳定但服务器响应慢、CPU或IO长期高负载,则偏向于主机或应用层问题。
用 mtr 观察丢包/延迟分布,若在到达云提供商机房前就出现明显丢包,说明公网链路问题;用 ss/netstat 查看连接数与SYN状态,若大量连接占用导致accept慢,说明主机或应用层瓶颈。
ping -c 20 IP;mtr -rwzbc100 IP;iperf3 -c IP -P 4 -t 30;ssh 登录后 top、iostat、vmstat、ss -s。
若多客户端都显示到达机房最后一跳延迟或丢包,优先考虑链路;若仅个别服务响应慢或单实例资源耗尽,优先考虑主机/应用。
链路排查从“路径——带宽——丢包——中间设备”四个维度进行。先用 traceroute/mtr 定位高延迟或丢包节点,然后与云厂商提供的公网监控或BGP路由查询对比。排查时注意分时段测试(业务高峰/非高峰),判断是否为瞬时拥塞。
如果确认为公网链路问题,可以:切换线路或ISP(如购买云厂商提供的专线/加速产品)、使用CDN或接入点更靠近用户、配置GSLB/Anycast、启用TCP加速(如QUIC/HTTP3)、或调低MTU以避免分片。
与云服务商沟通路由策略,要求查看骨干链路、是否有黑洞或丢包,必要时申请旁路检测或更换骨干节点;对跨境连接尤其关注出口带宽及国际链路质量。
每次调整后重复 mtr/iperf 测试,记录基线并用监控工具(如Prometheus+Grafana)持续观察延迟与丢包趋势。
主机排查从CPU、内存、磁盘IO、网络队列与内核参数五方面入手。登录实例运行 top/htop 查看CPU/负载,free -m 检查内存,iostat -x 1 5 看磁盘利用与等待时间,ss -s 与 netstat -anp 检查TCP状态。
检查NIC驱动、开启大接收/发送缓冲(rx/tx ring)、关闭或开启TSO/GSO/SG根据场景调优,使用 ethtool 查看和设置。调整 IRQ 亲和性(irqbalance或手动分配)以减少中断瓶颈。
通过 /etc/sysctl.conf 调整如 net.core.somaxconn、net.ipv4.tcp_tw_reuse、tcp_fin_timeout、tcp_max_syn_backlog、net.core.netdev_max_backlog、tcp_rmem/tcp_wmem 等;必要时启用最新拥塞控制算法(如 BBR)。
若磁盘IO高导致响应慢,可考虑使用更快的云盘或提升IOPS,优化数据库查询;将 ulimit -n 提升到合理值,防止文件描述符耗尽。
应用层问题常表现为单个请求处理慢或资源争用。常见优化包括:使用缓存(Redis/本地缓存)、启用CDN缓存静态资源、压缩与合并资源(Gzip/ Brotli)、开启HTTP/2或HTTP/3以减少握手延迟、减少同步阻塞操作。
数据库需做好索引、慢查询优化、读写分离和连接池配置。使用连接池(如HikariCP)避免频繁建立连接导致的延迟,合理设置连接池大小以匹配主机资源。
减少首屏请求数量与体积,开启资源懒加载、图片按需压缩并使用WebP,API接口尽量返回精简数据并支持分页、批量接口减少多次调用。
部署APM(如SkyWalking、Zipkin)与错误率/延迟告警,结合熔断限流(如Hystrix或服务网格限流)在突发流量时保护后端。
常用工具包括:ping、traceroute/mtr、iperf3、tcptraceroute、ss/netstat、tcpdump/tshark、ethtool、top/htop、iostat、iotop、vmstat、sar、dstat、strace(排查应用),以及云厂商提供的链路诊断工具与监控面板。
1) 收集症状:时间、地域、影响范围;2) 基础网络测试:ping/mtr/iperf;3) 登录实例检查资源:top/iostat/ss;4) 抓包定位:tcpdump 定位重传或RST;5) 针对性调整:链路侧联系ISP或启加速,主机侧调内核/驱动/扩容,应用侧做缓存与代码优化;6) 验证回归并持续监控。
mtr -rw IP;iperf3 -c IP -P4;ss -s;iostat -x 1 5;ethtool -S eth0;tcpdump -i eth0 port 80;sysctl -a | grep tcp;查看云监控面板网络带宽、丢包与实例性能指标。
保留测试日志、对比调整前后指标、在非业务高峰先做变更,并在变更后短期内密切监控;对跨境或敏感业务优先考虑多区域/多备份容灾与专线接入。