我们经常用redis 但遇到tomcat timeout的时候,如何确认不是redis的问题。
不能因为这个再去搞个redis 压力测试。有没有更省劲的方法来确认不是redis的问题
以下是针对 阿里云 ECS(8核16G,Redis 6分配3G内存,2个Tomcat各分配4G)反应迟钝 的 确定性排查流程,所有指标均提供明确的阈值和判断标准:
一、系统资源瓶颈排查
1. 内存检查
- 命令:
free -h # 查看物理内存和Swap使用 sar -r 1 5 # 每秒采样内存使用,持续5次
- 关键指标:
- 物理内存剩余:若
available
< 1G,系统可能频繁使用 Swap。 - Swap使用:
si
(Swap In)和so
(Swap Out)持续 > 0,表明内存不足,直接拖慢性能。
- 物理内存剩余:若
2. CPU检查
- 命令:
top -H -p <tomcat_pid> # 查看Tomcat线程CPU占用 mpstat -P ALL 1 # 查看每个核心的CPU利用率
- 关键指标:
- 总体CPU使用率:若
%us
(用户态)或%sy
(系统态)持续 > 70%,表明CPU饱和。 - 单个核心使用率:若某个核心持续 100%,可能存在单线程热点。
- 总体CPU使用率:若
3. 磁盘 I/O 检查
- 命令: