[ NenadS @ 02.12.2003. 06:19 ] @
| Da li postoji mogucnost da u Linuxu ogranicim broj procesa na nivou usera?
Recimo imam neke korisnike cije se cgi scripte pokrecu po 30-50 puta odjednom sto drasticno utice na performanse sistema, pa bih hteo da to ogranicim na odredjen broj. Probaj sam sa limits.conf ali to su ogranicenja za usere kao se uloguju na sistem, a ovo sto meni treba je nesto sasvim drugo.
Hvala unapred! |
[ popeye @ 02.12.2003. 15:50 ] @
Citat: NenadS:
Da li postoji mogucnost da u Linuxu ogranicim broj procesa na nivou usera?
Recimo imam neke korisnike cije se cgi scripte pokrecu po 30-50 puta odjednom sto drasticno utice na performanse sistema, pa bih hteo da to ogranicim na odredjen broj. Probaj sam sa limits.conf ali to su ogranicenja za usere kao se uloguju na sistem, a ovo sto meni treba je nesto sasvim drugo.
Hvala unapred!
man setrlimit
CGI skripte pod Apachem ili na sistemu? Kako se pokrecu (cron?)?
[ NenadS @ 02.12.2003. 18:53 ] @
To su obicne scripte u cgi-bin diru koje se pokrecu kad neko poseti sajt nista drugo. Znaci hocu da ih ogranicim na recimo 10 jer kad se pokrenu 50+ load skoci ma 30-40 i sve se zagusi...
[ popeye @ 03.12.2003. 00:36 ] @
Probaj sa RLimitNPROC ili rucno podesi setrlimit u suexec-u.
[ NenadS @ 03.12.2003. 03:07 ] @
Hm u man-u za setrlimit nema nista... tako da ne znam gde mogu nesto vise o tome da procitam!?
[ anon676 @ 03.12.2003. 11:41 ] @
Man limit.
Code:
panther:dpanic/pts/2: /etc# limit
cputime unlimited
filesize unlimited
datasize unlimited
stacksize 8MB
coredumpsize 0kB
memoryuse unlimited
maxproc 2047
descriptors 1024
memorylocked unlimited
addressspace unlimited
maxfilelocks unlimited
Ne mogu tačno da se setim, ali uz pomoć nekog GUI-a možeš ovo lakše da središ.
[ popeye @ 03.12.2003. 17:49 ] @
Ogranicenja se dobijaju od roditeljskog procesa, a pri logovanju se sprovode na login. Server apache (pocetni proces je pod root, ostali pod drugim korisnikom) ako CGI skripte ne rade preko suexec-a nije pametno ogranicavati. Ako se koristi suexec (svaka skripta se izvrsava pod uid-om vlasnika) u datoteci suexec.c preko setrlimit() i rlimit strukture se moze podesiti ogranicenje na korisnikove procese.
[ NenadS @ 03.12.2003. 20:22 ] @
Ja sam u httpd.conf u okviru virtuelnog hostinga dodao ovu liniju i to izgleda da radi:
RlimitNPROC 5|max
Naravno da se scripte izvrsavaju preko suexec i da se svakoj scripti dodeljuje user ID.
Videcu ovih dana kako ce ovo da radi...
[ NenadS @ 03.12.2003. 21:23 ] @
Hm izgleda da ovo nije dobro... jeste da je nesto ogranicio ali izgleda da je ogranio ceo server tako da se pokrece veoma mali broj procesa, load je mali, idle time je 70-90% ali server radi mnogo sporo...
trazio sam suexec.c i nisam ga nigde nasao.
Jel moras da postujes ovde jedan primer kako da ogranici preces pod userom nenad da moze da se u isto vremen pokrene samo 10 puta?
[ popeye @ 04.12.2003. 02:52 ] @
RLimitNPROC (kao i RLimitCPU i RLimitMEM) postavi u vhost (ne u opsu server) sekciju.
Recimo:
<VirtualHost 111.111.11.11>
DocumentRoot /var/www/localhost/nenad/htdocs
User nenad
Group webusers
RLimitCPU 30 30
RLimitMEM 8000000 10000000
RLimitNPROC 5 10
ScriptAlias /cgi-bin/ /var/www/localhost/nenad/cgi-bin/
</VirtualHost>
[ NenadS @ 04.12.2003. 15:50 ] @
Da tu sam i stavio, samo sto je kod mene to drugacije konfigurisano, tamo da svaki vhost ima svoj conf fajl. Probacu ponovo pa cemo da vidimo kako ce da se ponasa, jer se trenutno radi na instalaciji nove mreze, pa i to pravi probleme.
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|