CPUTool - Linux-da islendik prosessiň ulanylmagyny çäklendiriň we dolandyryň


Ulgamda zatlaryň nähili bolýandygyna gözegçilik etmek üçin Linux öndürijilik gözegçilik gurallarynyň aşagyndaky möhüm ugurlardan biri.

Bu gurallaryň köpüsi ulgamyň ýagdaýyny/statistikasyny çykarýar, beýlekileri bolsa ulgamyň işleýşini dolandyrmagyň serişdesini hödürleýär. CPUTool atly şeýle gurallaryň biri.

CPUTool, islendik prosessiň CPU ulanylmagyny belli bir çäkde çäklendirmek we gözegçilikde saklamak üçin ýönekeý, ýöne güýçli buýruk setiri guralydyr we ulgam ýükleri kesgitlenen çäkden geçse, ýerine ýetirişiň kesilmegine mümkinçilik berýär.

CPU ulanylyşyny çäklendirmek üçin cputool SIGSTOP we SIGCONT signallaryny proseslere iberýär we bu ulgam ýükleri bilen kesgitlenýär. PID-leri we olaryň CPU ulanyş çärelerini okamak üçin/proc pseudo-faýl ulgamyna bil baglaýar.

Bir prosessiň ýa-da bir topar prosesiň täsir eden CPU ulanylyşyny ýa-da ulgam ýüküni belli bir çäkde çäklendirmek we ulgam ýükleri çäkden geçse amallary togtatmak üçin ulanylyp bilner.

CPU ulanylyşyny we ortaça ýüküni çäklendirmek üçin CPUTool guruň

CPUTool diňe Debian/Ubuntu we olardan emele gelenleri paket dolandyryş guralyny ulanyp, adaty ulgam ammarlaryndan gurmak üçin elýeterlidir.

$ sudo apt install cputool

Indi “cputool” -yň hakykatdanam nähili işleýändigini göreliň. Bularyň hemmesini görkezmek üçin, fonda ýokary CPU göterimine we PID-i görkezmeli dd buýrugyny işlederis.

# dd if=/dev/zero of=/dev/null &

CPU ulanylyşyna gözegçilik etmek üçin işleýän Linux ulgam amallarynyň hakyky wagtda yzygiderli täzelenýän ýagdaýyny görmäge mümkinçilik berýän göz gurallaryny ulanyp bileris:

# top

Aboveokardaky çykyşdan, dd buýrugynyň CPU wagtynyň iň ýokary göteriminiň bardygyny görüp bileris 99,7%) Indi muny aşakda görkezilişi ýaly cputool ulanyp çäklendirip bileris.

--cpu-limit ýa-da -c baýdagy bir proses ýa-da amallar topary we ulanylyş göterimini kesgitlemek üçin we -p kesgitlemek üçin ulanylýar. PID. Aşakdaky buýruk dd buýrugyny (PID 8275) bir CPU ýadrosynyň 50% ulanylmagy bilen çäklendirer:

# cputool --cpu-limit 50 -p 8275 

“Cputool” işledilenden soň, proses üçin täze CPU ulanylyşyny (PID 8275) ýene bir gezek barlap bileris. Indi dd prosesi üçin CPU ulanylyşy (49.0% -52.0%) aralygynda bolmaly.

# top

Dd-iň CPU ulanylyşyny 20% -e çenli çäklendirmek üçin, ikinji gezek cputool işledip bileris:

# cputool --cpu-limit 20 -p 8275 

Soňra şuňa meňzeş serediş ýaly gurallary ulanmagy derrew barlaň (dd üçin CPU ulanylyşy indi 19.0% -22.0% ýa-da birneme daşarda bolmaly):

# top

“Cputool” işleýärkä, gabyk ulanyjynyň girişine garaşmaýar; şonuň üçin jogap bermeýär. Ony öldürmek üçin (bu CPU ulanylyşyny çäklendirmek amalyny bes eder) Ctrl + C basyň.

Möhüm zat, HTTP web serweri üçin bir topar toparyny kesgitlemek üçin (hersi aýratyn PID bilen birnäçe işleýän ýagdaýly bir programma):

# pidof apache2
9592 3643 3642 3641 3640 3638 3637 1780

-P baýdagyny şular ýaly ulanyň:

# cputool --cpu-limit 20 -P 1780

-l opsiýasy ulgamyň ýa-da iş toparynyň işlemegini dowam etdirmegi üçin ulgamyň gidip biljek iň ýokary ýüküni kesgitlemek üçin ulanylýar. Bölekleýin bahany ulanyp bileris (meselem, 2.5).

Aşakdaky mysal, ýerli ätiýaçlyk üçin rsync-i diňe ulgam ýüküniň 3,5-den geçmedik ýagdaýynda işletmegi aňladýar:

# cputool --load-limit 3.5 --rsync -av /home/tecmint /backup/`date +%Y-%m-%d`/

Has giňişleýin maglumat we ulanmak üçin CPUTool adam sahypasyna serediň:

# man cputool

CPU maglumatyny we CPU öndürijiligine gözegçilik etmek üçin aşakdaky peýdaly gollanmalary gözden geçiriň:

  1. 9 Linux-da CPU maglumatlary almak üçin peýdaly buýruklar
  2. Cpustat - Linux-da işlemek prosesi arkaly CPU-nyň ulanylyşyna gözegçilik edýär
  3. CoreFreq - Linux ulgamlary üçin güýçli CPU gözegçilik guraly
  4. Linux-da iň ýokary ýat we CPU ulanylyşy boýunça iň ýokary işleýiş amallaryny tapyň

Sözümiň ahyrynda, CPUTool Linux öndürijiligini dolandyrmak üçin hakykatdanam peýdalydyr. Bu makala baradaky pikirleriňizi aşakdaky seslenme formasy arkaly paýlaşyň.