顶部命令中的 %wa 很高,有什么方法可以限制它吗?

顶部命令中的 %wa 很高,有什么方法可以限制它吗?

这是我在卡住之前的最后一条重要信息:

top - 18:26:10 up 238 days,  5:43,  3 users,  load average: 1782.01, 1824.47, 1680.36
Tasks: 1938 total,   1 running, 1937 sleeping,   0 stopped,   0 zombie
Cpu(s):  2.4%us,  3.0%sy,  0.0%ni,  0.0%id, 94.5%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:  65923016k total, 65698400k used,   224616k free,    13828k buffers
Swap: 33030136k total, 17799704k used, 15230432k free,   157316k cached

如你所见,我已经启动了大约 2000 个执行hadoop get命令的进程,%哇非常高。我在 中限制了内存和 CPU cgroups,如果我也限制磁盘 IO,这会有帮助吗?如果是的话,有人能告诉我如何在 中做到这一点吗cgroups?提前致谢。

答案1

您的 RAM 不足以运行这 2000 个进程。

我们在这里可以看到您已经使用全部64GB 内存,还使用了额外的 17GB 交换空间。您的服务器鞭笞,勇敢地尝试交换数据让这 2000 个进程各自做某事。

但它当然不起作用。

这里只有两个解决方案:

  1. 启动较少的进程,这样就不会耗尽 RAM。(尝试 1500。)
  2. 向服务器添加更多 RAM,以便它可以运行所有进程。

相关内容