限制CPU的方式有以下几种:
1、taskset
2、cpulimit
一、taskset
-p,--pid 对一个已存在的pid进行操作 -c,--cpu-list 限定进程到指定的cpu上,可以指定多个,以逗号分隔,也可指定范围:1,2,5,6-8。
示例:
使用 taskset 将19041 绑定到 核1
[root@hankyoon ~]# taskset -pc 1 19041 pid 19041's current affinity list: 0,1 pid 19041's new affinity list: 1
二、cpulimit
参数详解:
使用方法:cpulimit [OPTIONS…])目标 选项 -l,——limit=N百分比的cpu允许从0到1600(必需) -v,——verbose显示控制统计信息 -z,——惰性退出如果没有目标进程,或者如果它死了 -i,——include-children还限制子进程 -h,——help显示帮助并退出 TARGET必须恰好是以下其中之一: -p,——pid=N进程的pid(暗示-z) -e,——exe=FILE可执行程序文件名或路径名 命令[ARGS]运行此命令并限制它(暗示-z)
命令:
[root@hankyoon ~]# cpulimit -e mysqld -l 70 -z -v # 命令对mysqld进程进行限制
注意:
cpulimit 是限定某个进程的cpu使用率,而非像taskset 绑定某个进程到指定的cpu上面