新部署的腾讯云服务器(CVM)出现性能不佳时,建议按照“从外到内、从宏观到微观”的逻辑进行系统性排查。以下是详细的排查步骤和常用命令:
1. 基础资源监控(确认瓶颈类型)
首先登录腾讯云控制台或使用云监控工具,查看 CPU、内存、磁盘 I/O、网络带宽 的历史曲线。
- CPU 高负载:检查是否有死循环进程、X_X病毒或突发流量。
- 内存不足:检查是否发生 Swap 交换频繁(导致系统卡顿)。
- 磁盘 I/O 等待高:常见于数据库读写或日志写入,表现为
iowait高。 - 网络带宽打满:检查是否被 DDoS 攻击或带宽规格配置过低。
提示:如果控制台显示 CPU/内存使用率正常,但应用依然慢,可能是网络延迟或应用层逻辑问题。
2. 操作系统内部排查(SSH 登录服务器)
如果控制台数据无法定位问题,需通过 SSH 登录服务器执行以下检查:
A. 整体负载与 Top 进程
使用 top 命令查看实时负载:
top
# 关注指标:
# - load average:如果超过 CPU 核数,说明过载。
# - %Cpu(s):重点关注 'wa' (iowait) 和 'si/so' (swap)。
# - 按 'P' 键按 CPU 排序,按 'M' 键按内存排序。
使用 htop(需安装)可获得更直观的界面。
B. 磁盘 I/O 分析
如果 top 中 wa 很高,使用 iotop 查看具体是哪个进程在读写磁盘:
sudo iotop -oPa
如果没有安装,可使用 iostat -x 1 查看磁盘利用率 (%util) 和平均队列深度 (await)。
C. 内存与 Swap 检查
free -h
# 观察 swap 的 si (swap in) 和 so (swap out) 是否为 0。
# 如果持续有数值,说明物理内存不足,系统频繁交换,性能会急剧下降。
D. 网络连接与端口监听
检查是否有异常连接占用端口或带宽:
netstat -antp | grep ESTABLISHED | wc -l
# 查看连接数是否异常多
ss -s
# 查看 TCP 状态分布
如果是网络慢,检查带宽限制:
# 测试内网速度(排除公网限制)
iperf3 -c <目标 IP>
3. 腾讯云特有因素排查
新服务器常因云环境特性导致性能问题,需重点检查以下几点:
A. 实例规格与计费模式
- 突发性能实例 (T5/T6):如果你购买的是 T5/T6 系列,它们基于“积分制”。如果积分耗尽,CPU 会被强制限制在基准性能(如 10%-20%),导致严重卡顿。
- 验证方法:在控制台查看该实例的“积分余额”或“基准性能”设置。
- 解决:购买更多积分包,或升级为标准型/计算型实例。
- 共享型 vs 独享型:早期购买的共享型实例可能受邻居干扰(Noisy Neighbor)。
B. 安全组与防火墙
- 安全组规则:检查是否限制了特定端口的入站/出站流量,导致业务请求超时。
- 系统防火墙:检查
iptables或firewalld是否误拦截了内部通信或回环接口。
C. 云盘性能
- 云盘类型:确认使用的是 SSD 还是高效云盘。旧款机械硬盘(HDD)在新系统下可能成为瓶颈。
- IOPS 限制:某些云盘规格有 IOPS 上限,如果业务并发读写超过此上限,延迟会飙升。
D. 镜像与驱动
- 内核版本:部分老旧镜像可能未适配最新的云硬件提速功能(如网卡中断处理)。尝试更新内核或重装为官方最新镜像。
- 虚拟化驱动:确保安装了腾讯云专用的 VirtIO 驱动(Linux 通常已内置,Windows 需手动安装)。
4. 应用层与中间件排查
如果系统资源正常,问题可能出在软件本身:
- 数据库:检查 MySQL/Redis 是否有慢查询(Slow Query Log),索引是否失效。
- Web 服务:检查 Nginx/Apache 的错误日志,看是否有大量 502/504 错误。
- 依赖库:确认 PHP/Java/Python 等运行时的 GC(垃圾回收)机制是否正常,是否存在内存泄漏。
- DNS 解析:执行
dig或nslookup测试域名解析速度,DNS 过慢会导致连接建立延迟。
5. 快速诊断清单(Summary)
| 现象 | 可能原因 | 推荐操作 |
|---|---|---|
| CPU 长期 100% | X_X病毒、死循环代码、突发流量 | top 查进程,扫描恶意文件,升级带宽 |
| 系统卡顿,鼠标响应慢 | 磁盘 I/O 等待过高 (wa 高) |
iostat 查磁盘,检查数据库慢查询 |
| 应用响应慢,但 CPU/内存低 | 网络延迟、DNS 问题、连接池满 | ping/traceroute,检查 netstat 连接数 |
| 间歇性极慢 | 共享型实例争抢、T5/T6 积分耗尽 | 检查控制台积分余额,考虑升级实例规格 |
| 完全连不上 | 安全组封锁、防火墙、IP 被封禁 | 检查安全组规则,联系腾讯云工单解封 |
建议行动
- 优先检查:腾讯云控制台的云监控图表(特别是 CPU 积分和磁盘 IOPS)。
- 临时缓解:如果是突发流量,可暂时开启弹性公网 IP 的带宽限速或DDoS 防护。
- 终极方案:如果怀疑是底层硬件或宿主机故障,直接提交工单给腾讯云技术支持,要求后台检测宿主机健康度。
云小栈