Verwenden Sie cpulimit, um die CPU-Auslastung des VPS zu begrenzen und ein Suspendieren zu verhindern

Verwenden Sie cpulimit, um die CPU-Auslastung des VPS zu begrenzen und ein Suspendieren zu verhindern

Vorwort

Da Maschinen mit kleinem Speicher oft billiger sind und die jährliche Zahlung bei etwa 5 US-Dollar liegen kann, begrenzen die Hersteller die CPU- und Festplatten-E/A. Wenn das Limit überschritten wird, wird es gesperrt. Dies ist eine gelegentliche Angelegenheit, und einige Host-Unternehmen gewähren keine Rückerstattung für die Sperrung.

Daher können wir Software verwenden, um die CPU-Auslastung und die E/A zu begrenzen. Verwenden Sie außerdem keine Benchmarking-Software, um das Spiel auszuführen, sonst ist Ihr Schicksal besiegelt.

Installieren

Cpulimit ist eine Software, mit der die CPU-Auslastung gesteuert werden kann.

Paketinstallation

Centos:

 yum install cpulimit

Debian/Ubuntu

 apt-get install cpulimit

Kompilieren und installieren

 cd /tmp wget 'http://downloads.sourceforge.net/cpulimit/cpulimit-1.1.tar.gz' tar cpulimit-1.1.tar.gz cd cpulimit-1.1 make cp cpulimit /usr/local/sbin/ rm -rf cpulimit*

verwenden

veranschaulichen

 cpulimit -h Usage: cpulimit [OPTIONS...] TARGET OPTIONS -l, --limit=N percentage of cpu allowed from 0 to 100 (required)//cpu限制的百分比-v, --verbose show control statistics//顯示版本號-z, --lazy exit if there is no target process, or if it dies//如果限制的進程不存在了,則退出。 -i, --include-children limit also the children processes//包括子進程。 -h, --help display this help and exit //幫助,顯示參數TARGET must be exactly one of these: -p, --pid=N pid of the process (implies -z) //進程的pid -e, --exe=FILE name of the executable program file or path name //可執行程序COMMAND [ARGS] run this command and limit it (implies -z)

Verwendung

Begrenzen Sie die CPU-Auslastung von Firefox auf 30 %

 cpulimit -e firefox -l 30

Begrenzen Sie das Programm mit der Prozessnummer 1313 auf 30 % CPU-Auslastung

 cpulimit -p 1313 -l 30

Begrenzen Sie die CPU-Auslastung der Software unter dem absoluten Pfad

 cpulimit -e /usr/local/nginx/sbin/nginx -l 50

Vorsichtsmaßnahmen

Das CPU-Auslastungslimit nach -l sollte exponentiell entsprechend der tatsächlichen Anzahl der Kerne reduziert werden. Die 40%-Grenze gilt für einen Single-Core-Server. Handelt es sich um einen Dual-Core-Server, sollte die Grenze auf 20%, bei einem Quad-Core-Server auf 10% usw. begrenzt werden.
Der Root-Benutzer kann alle Prozesse einschränken, während normale Benutzer nur Prozesse einschränken können, für deren Verwaltung sie eine Berechtigung haben.
Begrenzen Sie die CPU-Auslastung für alle Prozesse

Standardmäßig kann cpulimit nur bestehende Prozesse begrenzen, aber Sie können dieses Skript so einstellen, dass es automatisch nach dem Zufallsprinzip gestartet wird (siehe den Skriptlink oben für Einstellungsmethoden). Es überwacht und begrenzt alle Prozesse (einschließlich neuer Prozesse) (überprüft einmal alle 3 Sekunden, CPU-Limit beträgt 75 %)

Dadurch kann verhindert werden, dass das System aufgrund einer hohen CPU-Auslastung hängen bleibt!

 #!/bin/bash while true ; do id=`ps -ef | grep cpulimit | grep -v "grep" | awk '{print $10}' | tail -1` nid=`ps aux | awk '{ if ( $3 > 75 ) print $2 }' | head -1` if [ "${nid}" != "" ] && [ "${nid}" != "${id}" ] ; then cpulimit -p ${nid} -l 75 & echo "[`date`] CpuLimiter run for ${nid} `ps -ef | grep ${nid} | awk '{print $8}' | head -1`" >> /root/cpulimit-log.log fi sleep 3 done

Speichern Sie unter /root/cpulimit.sh. Die Protokolldatei /root/cpulimit-log.log wird automatisch generiert.

Fügen Sie dann diese Kostenreduzierung hinzu, um beim Booten zu beginnen.

So einstellen, dass es beim Booten startet

Ändern Sie /etc/rc.local, fügen Sie /root/cpulimit.sh an der entsprechenden Stelle hinzu und starten Sie das System neu, wodurch die CPU-Auslastung jedes Prozesses begrenzt wird!

über: https://www.mf8.biz/cpulimit-make-none-suspend/

<<:  FastWebHost: 12 $/Jahr/unbegrenzter Speicherplatz/unbegrenzter Datenverkehr/kann 1 Domänennamen binden/Phoenix

>>:  K9VPS: 5,94 $/Jahr/128 MB Speicher/10 GB Speicherplatz/500 GB Datenverkehr/OpenVZ/Los Angeles

Artikel empfehlen

VestaCP stellt Sicherungsdaten wieder her

VestaCP ist ein russisches VPS-Kontrollfeld, mit ...

SingleHop Server Mai Gutscheincode

Gutscheincode: DSUE1 Rabatt: Kaufen Sie einen ded...

WootHosting 4 GB RAM Los Angeles OpenVZ VPS-Bewertung

Details: WootHosting: 19 $/Jahr/2 GB Speicher/50 ...

Combozo: 7 $/Jahr/256 MB/15 GB Speicherplatz/100 GB Datenverkehr/OpenVZ/Phoenix

Combozo hat einen Neujahrsrabatt eingeführt. Im V...

Impact: 50% Rabatt auf virtuelle Hosts und VPS, schon ab nur

Das schon vielfach eingeführte impact bietet dies...

Shura Cloud 256 MB 30 Mbit/s Bandbreite Hongkong CMI KVM VPS-Test

Details : Shura Cloud: 9 Yuan/Monat/256 MB Speich...