09-11-2023, 06:27 PM
您是否希望限制 Linux 服务器上特定进程或应用程序的 CPU 利用率?CPULimit 是 Linux 中用于限制进程 CPU 使用率的工具。它可以防止应用程序在相当长的一段时间内使用整个内核。在 PC 上运行的每个应用程序都会消耗处理器的功率,如果最终多个应用程序一起使用,它们可能会因使用过多的处理器功率而降低计算机的速度,因此,CPULimit 可用于限制这种使用,并防止处理器过度使用.
CPULimit 安装要求
安装 CPULimit 主要有 3 个要求。首先,需要一个可以运行 CentOS 7 的 64 位服务器(我们将在本教程中使用基于 CentOS 7 的服务器)。其次,需要sudo 或 root 访问权限。最后make、screen 和 wget是必需的,所以请在继续之前在您的服务器上安装这些。
如何安装 CPULimit
安装过程如下:
1.第一步是下载CPULimit后解压tarball:
2.下一步包括进入第一步创建的目录:
3.将 CPULimit 编译成二进制的make用法如下:
4.第三步使一个二进制文件在 cpulimit-2.5 目录中可用。为了完成安装过程,最终命令如下:
CPULimit的工作原理
CPULimit 的基本工作原理是快速终止或启动应用程序,以便将 CPU 使用率限制在较小的周期数内。但是,发送停止信号 (SIGSTOP) 时可以终止的应用程序不应与 CPULimit 一起使用。
如何配置 CPULimit
接下来我们需要了解的是PID (即进程ID)。这可以通过使用“top”命令来完成:
现在应该显示正在运行的进程,例如:
现在在上面的示例中——假设Plex需要限制为 10% 的 CPU 利用率。您将需要在屏幕中运行命令,如下所示:
命令可用于离开屏幕。
总的来说,以下代码用作 CPULimit 的格式:
你在你的环境中使用 cpulimit 吗?我们很乐意在下面听到您的评论!
CPULimit 安装要求
安装 CPULimit 主要有 3 个要求。首先,需要一个可以运行 CentOS 7 的 64 位服务器(我们将在本教程中使用基于 CentOS 7 的服务器)。其次,需要sudo 或 root 访问权限。最后make、screen 和 wget是必需的,所以请在继续之前在您的服务器上安装这些。
如何安装 CPULimit
安装过程如下:
1.第一步是下载CPULimit后解压tarball:
代码:
cd ~
wget https://astuteinternet.dl.sourceforge.net/project/limitcpu/limitcpu/cpulimit-2.5.tar.gz
tar -xvf cpulimit-2.5.tar.gz
代码:
cd cpulimit-2.5
代码:
make
代码:
make install
CPULimit 的基本工作原理是快速终止或启动应用程序,以便将 CPU 使用率限制在较小的周期数内。但是,发送停止信号 (SIGSTOP) 时可以终止的应用程序不应与 CPULimit 一起使用。
如何配置 CPULimit
接下来我们需要了解的是PID (即进程ID)。这可以通过使用“top”命令来完成:
代码:
top -c
现在应该显示正在运行的进程,例如:
代码:
Tasks: 130 total, 1 running, 129 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.2 us, 0.0 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 3881740 total, 191952 free, 413472 used, 3276316 buff/cache
KiB Swap: 4063228 total, 4062912 free, 316 used. 2881364 avail
Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1336 plex 35 15 1368172 67464 6668 S 0.3 1.7 155:41.58 Plex Plug-in [com.plexapp.system] /usr/lib/plexmediaserver/Resources/Plug-ins-995f1dead+
31345 root 20 0 326572 21844 12784 S 0.3 0.6 86:45.32 docker-containerd --config /var/run/docker/containerd/containerd.toml
1 root 20 0 193704 6744 4088 S 0.0 0.2 6:49.22 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
2 root 20 0 0 0 0 S 0.0 0.0 0:01.45 [kthreadd]
3 root 20 0 0 0 0 S 0.0 0.0 0:12.77 [ksoftirqd/0]
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [kworker/0:0H]
7 root rt 0 0 0 0 S 0.0 0.0 0:13.95 [migration/0]
代码:
screen -S limitcpucpulimit -p 1336 -l 10
代码:
Ctrl+A+D
总的来说,以下代码用作 CPULimit 的格式:
代码:
cpulimit -p (PROCESS PID) -l (CPU %)