高空闲 CPU / 低 CPU 平均负载

高空闲 CPU / 低 CPU 平均负载

删除 APC(替代 php 缓存)后,我注意到分页访问次数减少了,脏页也减少了,但同时:

  • 高空闲CPU
  • CPU 负载非常低(相对于移除 APC 之前的时间)

如果我没记错的话,CPU 空闲可能是一件坏事。所以我检查了“可中断睡眠进程/线程”。

while true; do date; ps auxf | awk '{if($8=="D") print $0;}'; sleep 1; done

我注意到没有等待过程。

您认为这种空闲可能是由其他原因引起的吗?删除 APC 可能会导致更多磁盘访问,因为没有 php 操作码(由 APC 生成)并保存到内存中。

答案1

我相信一切都是完美的...

  • 无需等待
  • CPU 负载极低

CPU 空闲是一件好事。这意味着 CPU 不会因任务而过载。

我对 APC 一无所知,但在我看来,如果你不使用缓存,你将有更多的磁盘访问权限。缓存将存储在内存中,避免访问磁盘并提高性能。

#更新#语法检查/重写

答案2

CPU 空闲本身并不是问题。仅当您注意到性能问题,即没有利用足够的 CPU 来及时处理负载时,这才可能成为问题。

此外,大多数设计良好的缓存都遵循这样一种模式:一开始会占用更多的 CPU,但过了一段时间,CPU 负载就会下降,并且会占用更多的内存。因此,它不会导致 CPU 时间激增来摆脱它,它只会导致系统范围内的峰值,iowait%因为它将进入磁盘。

事实上,禁用 APC 后您没有看到任何处于状态 D 的进程,这可能表明缓存是不必要的。我会检查命令中的iostat和 的输出,以查看实际正在进行的磁盘活动量。iowait%top

相关内容