如何在CentOS 7上安装和使用CPULimit

CPULimit是一种Linux实用程序,用于限制应用程序的资源使用。当您要防止单个应用程序减慢其他应用程序的速度时,此功能很有用。或使应用程序长时间不使用整个内核。

话虽如此,CPULimit可能无法与所有应用程序一起使用,因为它(本质上)会间隔一定时间启动/停止进程以降低CPU使用率(以平均水平表示)。下一节将对此进行解释。

它是如何工作的?

CPULimit不适用于例如使用作业控制的应用程序。因为它们可能在CPULimit发送stop(SIGSTOP)信号时被杀死。本质上,应用程序将快速打开/关闭,以将程序限制为所需的周期数。

不过请放心-大多数应用程序都可以运行。可能会受到限制的某些应用程序包括PHP,Java和Nginx。

先决条件

为了成功安装CPULimit,您将需要:

  • 运行CentOS 7的服务器(仅64位系统)。
  • makescreenwget
  • 根访问或sudo特权。

安装CPULimit

假定您已安装所有先决条件,则应该能够轻松完成安装过程。首先,您需要下载CPULimit并解压缩tarball:

cd ~
wget https://astuteinternet.dl.sourceforge.net/project/limitcpu/limitcpu/cpulimit-2.5.tar.gz
tar -xvf cpulimit-2.5.tar.gz

压缩包完成提取后,我们可以进入新创建的目录并开始编译CPULimit:

cd cpulimit-2.5

现在,运行make以开始将CPULimit编译为二进制文件:

make

此过程完成后,cpulimit-2.5目录中将有一个二进制文件。为了使其在整个系统范围内可用,我们将需要执行以下命令:

make install

可能需要一些时间才能完成。

使用应用程序配置CPULimit

为了使用CPULimit,我们需要知道进程ID。这称为PID。通过使用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]

plex例如,如果要限制,则需要注意PID。在这种情况下为1336。如果要限制plex为CPU的15%,则需要创建一个screen并执行cpulimit

screen -S limitcpu
cpulimit -p 1336 -l 15

要退出屏幕,请使用以下组合:CTRL+ A+ D。要在退出后进入屏幕,只需执行以下操作:

screen -r limitcpu

常规运行格式cpulimit如下:

cpulimit -p (PROCESS PID) -l (CPU %)

注意PROCESS PID是进程ID,CPU %是CPU限制。

卸载CPULimit

删除CPULimit很简单。执行以下命令:

cd ~/cpulimit-2.5
make deinstall

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息