sudo cgexec -g cpu:lesscpulimited /usr/local/bin/matho-primes 09999999999>/dev/null&
再打开 top 就可以看到,cpu.shares 值大的控制组会得到更多的 cpu 运行时间。
现在,我们再在 cpulimited 控制组中增加一个 matho-primes 进程:
sudo cgexec -g cpu:cpulimited /usr/local/bin/matho-primes 09999999999>/dev/null&
看到没,两个控制组的 cpu 的占用率比例仍然为2:1。其中,cpulimited 控制组中的两个 matho-primes 进程获得的cpu 时间基本相当,而另一组中的 matho-primes 进程显然获得了更多的运行时间。
更多的使用方法,可以在 Red Hat 上查看详细的 cgroups 使用说明。(当然CentOS 7也有)
使用Scout来监控cpu占用率监控cpu占用率最为简单的方法是什么?Scout 工具能够监控能够自动监控进程的cpu使用率和内存使用情况。
Scout的触发器(trigger)功能还可以设定 cpu 和内存的使用门限,超出门限时会自动产生报警。
从这里可以获取 Scout 的试用版。
总结计算机的系统资源是非常宝贵的。上面介绍的这3个工具能够帮助大家有效地管理系统资源,特别是cpu资源:
nice可以一次性调整进程的优先级。
cpulimit在运行cpu密集型任务且要保持系统的响应性时会很有用。
cgroups是资源管理的瑞士军刀,同时在使用上也很灵活。