本文介绍CPU使用率的相关概念以及常见CPU使用率高的原因。

CPU相关概念

概念 说明
CPU使用率 CPU使用率指的是CPU执行工作的时间比例,包含了所有符合条件的活动的时钟周期,比如停滞等待IO而导致较高的使用率,CPU使用率被分为内核时间和用户时间。
用户时间 执行用户态程序的时间被称为用户时间。
内核时间 执行内核态代码时间为内核时间,包含系统调用,内核线程和中断的时间。
上下文切换 内核程序切换CPU让其在不同的地址空间上操作。
中断 由物理设备发送给内核的信号,通常是请求I/O服务。

常见CPU使用率高的原因

  • 扫描行数突然变多,说明当前存在不合理的SQL、缺少索引或者有大量统计类SQL在执行。这种情况需要您找到问题SQL,查看并分析执行计划,对相关SQL进行优化,查看扫描行数请参见性能监控CPU高的原因-1
  • 锁等待导致的相关会话阻塞造成SQL堆积,请参见性能洞察CPU高的原因-2