Bii O ṣe le Diwọn Aago ati Lilo Iranti ti Awọn ilana ni Lainos
Iwe afọwọkọ akoko jẹ eto ibojuwo ohun elo wulo fun didi akoko ati agbara iranti ti awọn ilana ni Lainos. O fun ọ laaye lati ṣiṣe awọn eto labẹ iṣakoso, ati mu lagabara akoko ati awọn opin iranti, fopin si eto naa lori o ṣẹ si awọn ipo wọnyi.
Ko si fifi sori ẹrọ ti o nilo, ṣiṣe pipaṣẹ papọ pẹlu awọn ariyanjiyan rẹ nipa lilo eto akoko ipari ati pe yoo ṣe atẹle iranti aṣẹ ati lilo akoko, da gbigbi ilana naa ti o ba jade lọ si awọn aala, ati sọ fun ọ pẹlu ifiranṣẹ ti a ti pinnu tẹlẹ.
Lati ṣiṣẹ iwe afọwọkọ yii, o gbọdọ ni Perl 5 sori ẹrọ lori ẹrọ Linux rẹ ati eto eto/proc ti a fi sii.
Lati ṣayẹwo ẹya ti a fi sori ẹrọ ti Perl lori ẹrọ Linux rẹ, ṣiṣe aṣẹ atẹle.
$ perl -v
Nigbamii, ṣe ẹda ibi ipamọ akoko ipari si eto rẹ nipa lilo pipaṣẹ Linux deede.
$ cd ~/bin $ git clone https://github.com/pshved/timeout.git $ cd timeout
Jẹ ki a wo bayi bi akosile akoko-iṣẹ ṣe n ṣiṣẹ.
Apẹẹrẹ akọkọ yii fihan bi a ṣe le fi opin si lilo iranti ti ilana kan si 100M ti iranti foju, ni lilo asia -m
. Ẹrọ aiyipada fun iranti wa ni kilobytes.
Nibi, aṣẹ wahala-ng nṣakoso awọn ipọnju iranti iranti mẹrin (VMS) ti o ṣopọ lati lo 40% ti iranti ti o wa fun awọn iṣẹju 10. Nitorinaa wahala kọọkan nlo 10% ti iranti ti o wa.
$ ./timeout -m 100000 stress-ng --vm 4 --vm-bytes 40% -t 10m
Ṣiyesi iṣejade aṣẹ pipa-akoko loke, awọn ilana aapọn wahala ng pari lẹhin awọn iṣẹju-aaya 1,16 kan. Eyi jẹ nitori agbara iranti iranti ti VMS (438660 kilobytes) tobi ju lilo iranti iranti laye lọ fun wahala-ng ati awọn ilana ọmọ rẹ.
Lati mu idiwọn akoko ti ilana ṣiṣẹ, lo asia -t
bi o ti han.
$ ./timeout -t 4 stress-ng --vm 4 --vm-bytes 40% -t 10m
Ninu apẹẹrẹ ti o wa loke, nigbati akoko wahala-ng CPU + akoko SYS kọja iye ti a ṣalaye ti 4, a pa awọn ilana oṣiṣẹ.
O tun le ṣe idinwo iranti mejeeji ati akoko ni ẹẹkan bi atẹle.
$ ./timeout -t 4 -m 100000 stress-ng --vm 4 --vm-bytes 40% -t 10m
Akoko-akoko tun ṣe atilẹyin diẹ ninu awọn aṣayan ilọsiwaju bi --detect-hangups
, eyiti o jẹ ki iṣawari hangup.
$ ./timeout --detect-hangups -m 100000 stress-ng --vm 4 --vm-bytes 40% -t 10m
O le ṣe atẹle RSS (iwọn ṣeto olugbe) opin iranti nipa lilo iyipada -memlimit-rss
tabi -s
yipada.
$ ./timeout -m 100000 -s stress-ng --vm 4 --vm-bytes 40% -t 10m
Ni afikun, lati da koodu ijade pada tabi ifihan agbara + 128 ti ilana kan, lo aṣayan --confess
tabi -c
bi a ti han.
$ ./timeout -m 100000 -c stress-ng --vm 4 --vm-bytes 40% -t 10m
Fun alaye diẹ sii ati apẹẹrẹ lilo, wo ibi ipamọ Github akoko-ipari: https://github.com/pshved/timeout.
O tun le rii awọn nkan wọnyi ti o ni ibatan ti o wulo bakanna:
- Bii o ṣe le Wa Awọn ilana 15 Naa nipasẹ Lilo Iranti pẹlu ‘oke’ ni Ipo Ipele
- CPUTool - Iwọn ati Iṣakoso Sipiyu Lilo ti Ilana Kankan ni Lainos
- Bii o ṣe le Fi opin si Lilo Sipiyu ti Ilana kan ni Linux pẹlu Ọpa CPULimit
Iwe afọwọkọ akoko jẹ eto ibojuwo ohun elo ti o ṣe pataki ni ihamọ akoko ati agbara iranti ti awọn ilana ni Lainos. O le fun wa ni esi nipa iwe afọwọkọ akoko nipasẹ fọọmu asọye ni isalẹ.