Cputool - Linux中任何过程的限制和控制CPU利用率

关键领域之一必须是CPU使用率和系统负载。有几个密切关注系统的发展方式。

这些工具中的许多工具只是输出系统状态/统计信息,而其他一些工具为您提供了管理系统性能的方法。这样的一种工具称为cputool

cputool是一种简单但功能强大的命令行工具,用于将任何过程限制和控制CPU利用率限制到给定限制,并允许如果系统加载过度划出定义的阈值,则可以中断过程执行。

Cputool如何工作?

为了限制CPU的使用,Cputool发送了sigstopSigcont流程的信号,这取决于系统负载。它依靠阅读PID以及他们的CPU使用措施。

如果系统负载超出了阈值,则可以用来限制受单个过程或一组过程影响到给定限制和/或暂停过程的CPU使用或系统负载。

建议阅读:

安装cputool以限制CPU使用和负载平均

一个cputool仅可在Debian/Ubuntu及其派生函数上安装来自默认系统存储库的衍生工具。

$ sudo apt install cputool

限制流程使用CPU使用

现在,让我们看看Cputool的工作原理。为了证明这一切,我们将运行一个DD命令这应该导致高CPU百分比,并在后台显示其PID。

# dd if=/dev/zero of=/dev/null &

为了监视CPU使用情况,我们可以使用或者使我们能够查看运行Linux系统过程的实时定期更新状态的工具:

# top
监视DD命令CPU用法

从上面的输出,我们可以看到DD命令CPU时间的百分比最高99.7%)现在,我们可以使用CPUTOOL限制这一点,如下所示。

--cpu-limit或者-c标志用于为过程或一组过程设置使用百分比,-p指定PID。以下命令将将DD命令(PID 8275)限制为50%使用一个CPU核心:

# cputool --cpu-limit 50 -p 8275 

运行Cputool后,我们可以再次检查新的CPU使用情况(PID 8275)。现在CPU的使用DD过程应从(从49.0%-52.0%)。

# top
将CPU限制为50%的使用

进一步将DD的CPU使用限制为20%,我们可以第二次运行Cputool:

# cputool --cpu-limit 20 -p 8275 

然后立即使用诸如或者这样(CPU使用DD现在应该从19.0%-22.0%或稍微超出此):

# top
将CPU使用限制为20%

请注意,Cputool在运行Cputool时不会期望任何用户输入;因此变得无反应。要杀死它(这将终止CPU使用限制操作),请按Ctrl + C

重要的是,要指定一个过程组(一个具有不同PID的运行实例的程序),例如HTTP Web服务器:

# pidof apache2
9592 3643 3642 3641 3640 3638 3637 1780

使用-P这样的标志:

# cputool --cpu-limit 20 -P 1780

限制系统负载与破裂

-l选项用于指定系统可能会进行的最大负载,以使过程或过程组继续运行。我们可能会使用分数值(例如2.5)。

下面的示例意味着运行仅当系统负载不超过时,仅当本地备份3.5

# cputool --load-limit 3.5 --rsync -av /home/tecmint /backup/`date +%Y-%m-%d`/

有关更多信息和用法,请查看Cputool Man页面:

# man cputool

请检查以下有用指南以查找CPU信息和CPU性能监控:

综上所述,cputoolLinux绩效管理确实非常方便。请通过下面的反馈表格分享您对本文的想法。

嘿,tecmint读者,,,,

激动人心的消息!每个月,我们的顶级博客评论者都有机会赢得奇妙的奖励,例如免费的Linux电子书,例如RHCE,,,,RHCSA,,,,LFCS,,,,学习Linux, 和尴尬,每个值$ 20

学习呢

亚伦·基利(Aaron Kili)是Linux and Foss爱好者,即将到来的Linux Sysadmin,Web开发人员,目前是Tecmint的内容创建者,他喜欢使用计算机,并且坚信共享知识。


每个教程tecmint是由经验丰富的Linux系统管理员团队创建的这样它符合我们的高质量标准。