Linux---使用cpulimit限制cpu占用率

cpulimit 命令的工作原理是为进程预设一个 cpu 占用率门限,并实时监控进程是否超出此门限,若超出则让该进程暂停运行一段时间。cpulimit 使用 SIGSTOP 和 SIGCONT 这两个信号来控制进程。它不会修改进程的 nice 值,而是通过监控进程的 cpu 占用率来做出动态调整。可以控制进程的cpu使用率的上限值。
1.cpulimit安装

先安装epel源
yum install epel-release

#Ubuntu/Debian:
apt-get install cpulimit
#RedHat/CentOS
yum install cpulimit

或者源码编译安装

wget -O cpulimit.zip https://github.com/opsengine/cpulimit/archive/master.zip
unzip cpulimit.zip
cd cpulimit-master
make
sudo cp src/cpulimit /usr/bin

2、查看进程占用情况,输入命令

top

3、使用

#a、根据进程ID限制:进程ID为1234的程序只能使用70%的cpu
cpulimit -p 1234 -l 70
#b、根据进程名称限制:xig只能使用70%的cpu
cpulimit --exe xig --limit 70

4、注意事项
这边要留意一点,-l后面默认值是百分比,而且在双核情况下要减半。例如在双核cpu情况下他可以利用25%的cpu,在4核的情况下,只能使用12.5%的cpu。root用户可以限值所有的进程,普通用户只能限值自己程序。

Last modification:August 19th, 2018 at 04:30 pm
If you think my article is useful to you, please feel free to appreciate

Leave a Comment