线程过多导致CPU占用率高
增加线程并不总意味着能完成更多工作。超过一定程度后,反而会适得其反。
Common symptoms
- CPU升高但吞吐量没有提升
- 增加工作线程后延迟变高
- 上下文切换激增
Likely causes
- 线程池配置过多
- 无限制创建工作线程
- 共享状态锁竞争严重
Evidence to look for
上下文切换异常频繁
线程数超过可用CPU核心数
运行队列延迟增加
What it usually means
系统花在线程切换上的时间多于执行有效工作的时间。
What to do next
- 1减少线程数量后再次测量
- 2降低共享状态的竞争
- 3在可能的情况下使用异步或事件驱动模式
See what's causing your CPU
cpum.ai turns CPU, process, disk, and memory signals into plain-English explanations with evidence.
Open cpum.ai