用cpulimit 动态限制进程cpu使用率

cpulimit 是一款小巧的控制系统某个进程的cpu 使用率

用cpulimit 动态限制进程cpu使用率

安装方式:

1
apt-get install cpulimit

可以通过下面三种方式选择限制进程:

1
2
3
1 进程名 -e exe
2 进程id -p pid
3 进程绝对路径 -P /root/xxx

下面的例子是限制进程abc 的cpu 使用率不超过75%:

1
cpulimit -e abc -l 75

如果要想动态限制其使用率,用随机数来指定limit 参数,写一个sh 脚本 limitcpu.sh

Bash:
1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/bash

output=`ps aux | grep cpulimit`
set -- $output
pid=$2
echo '-----'
echo $pid
kill -9 $2

limit=$(( RANDOM % (85 - 25 + 1 ) + 25 ))
echo $limit
cpulimit --exe=xmx --limit=$limit --lazy --background

上面的脚本是先寻找当前cpulimit 的pid 并干掉,然后取个随机limit 传给cpulimit。

编辑crontab,添加一个定时循环运行任务,让它每5分钟改变一次limit

1
*/5 * * * * /root/limitcpu.sh

cpulimit 项目地址 https://github.com/opsengine/cpulimit

本文网址: https://pylist.com/topic/145.html 转摘请注明来源

Suggested Topics

Ubuntu/Debian 查看CPU温度的方法

刚 DIY 一个小主机,因为使用功率很低的CPU,买了一个金钱豹2U散热器,风扇声音很大,就把风扇拆下来,只使用下面的铜块。就得对CPU问寒问暖,时刻了解它的温度。...

crontab 任务进程锁 Flock

当crontab 里跑一个运行时间不确定的任务,如有时需要30秒完成,有时需要5分钟完成,而在定时任务里我是设定每1 分钟运行一次。这样就容易引起上次任务还没跑完又开始跑了。这时可以用进程锁来运行。...

Leave a Comment