Newsgroup: it.comp.os.linux.debian
Titolo: [Apache2] - elevato consumo cpu

ciao a tutti
ho installato apache php mysql (tramite apt e ho lasciato le
configurazioni standard, solo creati 3 vHost) su un sistema nuovo debian
etch. Il server ospita 3 siti web, il traffico non dovrebbe essere
granchè elevato, fatto sta che  alcuni processi di apache hanno un
elevato consumo di cpu (anche 30%) e in totale arrivo spesso attorno al
70%. 
Facendo ps -axf i processi di apache in esecuzione contemporanea sono
circa 20 mentre per mysql ho un unico processo.
Sapresti indicarmi come effettuare un controllo per capire dove sta il
problema ed eventualmente mi consigliate un particolare setup?
grazie
-- 
manuel
Manuel
Linux Forum Staff - 
www.linuxforum.it
------------------------------------------------------------------------
manuel's Profile: 
http://www.linuxforum.it/member.php?userid=2
View this thread: 
http://www.linuxforum.it/showthread.php?t=13960

 
La cosa è molto strana. Ci puoi dire che CPU e memoria monta la 
macchina? Il fatto che ci sia php nei siti indica una certa 
elaborazione, sei sicuro che non sia quella a caricare gli apache?
Se vuoi vedere cosa sta facendo un apache mentre ti consuma il 30% di 
cpu, utilizza il comando strace
Puoi provare anche a ridurre il max execution time di php in modo da 
accorgerti (per via dell'errore) quale script impiega troppo tempo.
Leandro

il processore è un Intel Pentium 4 2.4 GHz
la ram 1GB ma non ti saprei dire di che tipo
in effetti l'elaborazione c'è (ci girano 2 forum vBulletin) ma far fare
il 30% a un processo mi sembra esagerato...
con strace vedo che cerca di accedere a dei .htaccess che in effetti
non esistono e poi va a scriverenei log... può essere colpa del
mod_rewrite?
se eventualmente disabilito l'error log (e magari anche l'access log
visto che le statisticheme le fa analytics) potrei risparmiare risorse?


 visto che le statisticheme le fa analytics) potrei risparmiare risorse?
che c'è scritto nei log?
se apache consuma così tanta cpu facendo *solo* queste cose, ci sono 3
possibilità: o hai un numero molto elevato di utenti (non conta il numero
dei siti ma quello dei contatti), oppure il disco è veramente molto lento
oppure ancora qualcosa non funziona nello scipt php. 

uno dei forum fa circa 10.000 utenti al giorno, gli accessi (intesi come
accesso a singola risorsa) non saprei.
gli altri hanno un traffico trascurabile
sui log error ci sono principalmente tentativi di accesso a risorse
inesistenti, tipo appunto file .htaccess dentro ogni cartella
per quanto riguarda il funzionamento degli script tendenzialmente mi
fiderei (perche non li ho scritti io :D)


 
Tanto per curiosità, il processore è di tipo hypertreading? Hai messo un 
kernel SMP? Hai messo irqbalance?
Riguardo all'elaborazione, non conosco il software vBulletin, ma è 
possibile che faccia molta elaborazione.
Riguardo al mod_rewrite, certo, occupano CPU. Che tipo di rewrite hai 
messo? molto complessa?
Riguardo ai dischi, con hdparm guarda quanto sono veloci i tuoi dischi e 
poi con iostat vedi quanto sono occupati.
Per migliorare le prestazioni puoi evitare di caricare tutti i moduli 
non utilizzati dell'apache, ma evitare di scrivere i file di log non mi 
pare una bella cosa.
Leandro