Newsgroup: it.comp.os.linux.sys
Titolo: Memoria + applicazioni web

Ciao a tutti,
ho messo su un server con redhat 9.0 e kernel 2.4.20-31.9smp, il server è un 
due processori xeon da 2.8Ghz l'uno e 2Gb da ram.
Adesso il server è stato configurato per applicazione di server web, server 
mail e server dns. Il tutto gira con configurato un pannello di controllo 
web-cp.
Ho notato che la ram del pc (2Gb) dopo un pò di giorni si consuma o meglio 
attualmente dopo 10gg di uptime facendo un "top" restano solo 500Mb di ram 
libero....
Prima avevo un server che faceva le stesse funzioni ma come pannello usavo 
plesk e succedeva la stessa cosa ma davo la colpa al plesk che lanciava una 
marea di cron per tenere i log, cosa che ora non capita. Il plesk si 
prendeva tutta la ram in 1/2 ore al max, questo no però ho paura di 
arrivarci visto che attulamente ci gira un solo sito, piuttosto tosto però è 
uno solo.... tra un pò saranno più di 100....
Il sito che attulamente ci gira è un applicativo php/mysql, di sicuro il 
mysql quando fà le ricerche nel db usa diversa ram ma tutte le connessioni 
sono settate per non essere persistenti quindi una volta finite dovrebbero 
rilasciare la ram, il php è la ver. 4.3.9 e il mysql è la 3.23.54a
Avete idea su come risolvere il problema e a che cosa possa essere 
attribuito ??? Ancora una cosa per installare la macchina ho usato una 
installazione minima di redhat e poi mi sono compilato a mano tutto ciò che 
mi serviva quindi c'è installato il minimo necessario, grazie mille
Matteo 

 libero....
E dunque?

 500Mb di ram libero....
Non trovo la pagina, ma in settimana avevo letto un interessante articolo a
riguardo del fatto che con Linux la memoria disponibile non si abbassa mai.
Il dato più importante da analizzare è la quantità di errori di pagina.
Linux, infatti, alloca quanta più memoria possibile, tenendosi un margine
per allocarne in più non appena necessario e disallocando memoria solo per
rendere disponibile lo spazio "di scarto".
Se vi sono tanti errori di pagina, significa che gran parte della CPU viene
spesa per allocare e liberare fette di memoria e questo è veramente indice
di qualcosa che non va.
Se invece è tutto più o meno nella norma, il dato che tu vedi potrebbe
essere dovuto a un momento di picco dal quale il sistema (per come è
progettato) non si è "ripreso".
Chiedo conferma di quanto sopra :-)
Alex.
-- 
___________________________________________________________
a p bertolini
(Tribù Digitale Blackmambo: 
www.blackmambo.it
)

 non si abbassa mai.
ERRATA:
Intendo dire che "non aumenta mai"
Alex.
-- 
___________________________________________________________
a p bertolini
(Tribů Digitale Blackmambo: 
www.blackmambo.it
)

 
Qualcuno veterano di icol*.... qualche tempo fa... (l'ho trovato in un 
msg del 1998) aveva scritto: memoria libera č memoria sprecata (cit. 
Marco D'Itri).
Il kernel tende ad allocare tutta la memoria che ha a disposizione, e 
poi la gestisce lui. Quando finisce la RAM, usa lo swap. Quanta swap č 
in uso? Se lo swap non č in uso, o l'uso č basso, puoi stare tranquillo.
Da top puoi anche vedere quanta percentuale di ram stanno usando le 
applicazioni, e quanta swap č in uso.
Saluti.

> attribuito ???
Probabilmente un quintale di demoni inutili che girano sul sistema
chkconfig --list |grep on
poi puoi dare anche un 
sysreport -norpm 
e vedi se qualcosa non va nel sistema

 Chiedo conferma di quanto sopra :-)
Confermo e aggiungi due cose:
- differenze tra memoria "used", "buffered/cached", e "free"
- ripetere il mantra "la memoria _LIBERA_ e` memoria inutilizzata (e
  quindi, sprecata).
-- 
                          Maurizio - Tannoiser - Lemmo
                 Founder Member of ERLUG 
http://erlug.linux.it
-------------------------------------------------------------------------------
Fixing Unix is easier than living with NT.

Allora rispondo un pň a tutto...
a quelli che fanno i simpatici, prima di domandare la risposta č questa, in 
un server in produzione preferisco mettere un distro che sň bene come 
funziona, non sň che esperienza tu possa avere ma nei ced piů grande usa un 
vecchio detto: "macchina che funziona non si tocca" io non mi fiderei molto 
a fare aggiornamenti a una macchina che gestisce certe cose. Poi la secondo 
e piů tecnica č che la fedora gestisce bind solo in modo chroot e non volevo 
che fosse cosě.
Poi per quanto rigurada la ram: lo swap e i processori sono totalmente 
liberi quindi a quanto avete detto dovrebbe essere tutto ok.
Vediamo allora quando caricherň la macchina che succede.
Cmq per finire mi spiace dover dire che non mai avuto un cosě brutto 
benvenuto in un newsgroup come in questo, forse č solo colpa di certe 
persone, quando uno posta qualche cosa si pensa che voglia semplicemente un 
aiuto e dover leggere delle battute e cose simili ci giuro che demoralizza. 
Vi assicuro inoltre che dove io spesso rispondo, dove conosco molto bene la 
materia, non mi permetterei mai di fare certe allusioni.
Con questo cmq ringrazio tutti quelli che mi hanno dato consigli.... saluti 
ancora....
Matteo 

 Bel consiglio da esperto.....
Dubito possa essegli utile "setup", "sysreport" o "chkconfig" visto che
necessita di un pannello di controllo per far girare il server.
La soluzione migliore è contattare il fornitore del "pannello" o pagare
un sysadmin che configuri il server.

 benvenuto in un newsgroup come in questo,
Ma se non ti hanno neanche sculacciato... :-)
Il fatto e' che la tua domanda compare con cadenza quasi settimanale su 
questo newsgroup e dopo un po' e' difficile resistere alla tentazione di 
rispondere in modo annoiato o un po' stravagante. Non te la prendere.
Alessandro.

 un sysadmin che configuri il server.
Ma ce l'avete con me...??? ma scusate ma perchè prima di rispondere non 
pensate un minuto ??
Il pannello non serve a me "mal pensanti" ma ai clienti che potranno 
gestirsi così gli spazi in autonomia... ma scusa tu credi che uno che non 
sappia gestire un server possa riuscire a installare web-cp ?? ma ti sei mai 
letto come si fà ?? non è proprio user-friendly...!!! 

 Vedo che non cogli affatto il punto.
Non colgo..
mi sono distratto a guardare il sorgente di detto pannello e capire la
logica perversa che sta alla base..
Morale guarda cosa si sono inventati per passare i comandi dal webserver
// open connection stream to webcp-httpd if (!$webcp =
fsockopen("localhost", $cfg['ssl_port'], $errno, $errstr))
	die("Connection to webcp-httpd failed");
else // turn off blocking
	socket_set_blocking($webcp, false);
// send request data to webcp-httpd
fwrite($webcp, $send, strlen($send));
// open output stream
$stunnel_out = fopen("php://stdout", 'w');
set_file_buffer($stunnel_out, 0);
Questi sono fuori come il ponte di volo di una portaerei...



Non ti scaldare.. mentre tu leggi come si installa.. io leggo il codice
il database ne comprendo la logica ed i bachi.. e senza nemmeno
installarlo.
Se te installi sta roba ai tuoi clienti.. auguri!
Ps: certamente bind è meglio averlo in chroot visto che è il demone più
tartassato in assoluto nella storia del web (tiene testa sendmail) e se
non ti riesce di farlo girare è perché il file di configurazione non si
trova in /etc ma in /var/named/chroot/etc e guardacaso funziona allo
stesso modo di named non chrooted

 disponibili e' obbligata? Geniale!
Da come parli, si vede che non hai mai lavorato in ambito professionale. Se
invece vi hai lavorato, potresti farci sapere dove cosi` evitiamo di
imbatterci nei tuoi "servizi"?
Henryx

 stesso modo di named non chrooted
Non č assolutamente un problema di farlo funzionare, mi funziona benissimo 
il bind in chroot e cmq mi sono rotto di questo post.... non sono venuto quě 
per farmi prendere in giro e sentire tanta ironiaaaa....
Ancora scusa a tutti se non sono colto e non sň tutto sull'argomento come ne 
sapete voi....
Grazie per gli aiuti
Matteo 

 per farmi prendere in giro e sentire tanta ironiaaaa....
Il problema è che il pannellino astutamente fa un include all'interno del
file di named facendolo puntare a /home/webcp/named/include/named.conf il
ché ovviamente visto che named è chroottato non può farlo..
Era molto più logico impostare un parametro che fornisse all'applicativo
il path completo del file e mandare lui a scrivere nel file
/var/named/chroot/etc/named.conf visto che non gli cambiava nulla.
I tizi che hanno progettato questa applicazione hanno cercato in qualche
modo di scopiazzare un p'ò da webmin ed un p'ò da plesk ma a quanto pare
non hanno capito n'è l'uno nè l'altro.
E tra le altre cose non mi pare di aver trovato riferimenti per una
connessione SSL per proteggere le informationi passate tramite http il
ché da solo è una voragine nella sicurezza dell'intero sistema visto che
chiunque può sniffare le info che passano in chiaro e di conseguenza
accedere al pannello di controllo prendendo il controllo del server.
"Il troppo lavorare deriva dal poco sapere"
Buon lavoro 

 Da come parli, si vede che non hai mai lavorato in ambito professionale.
Boh...se qualcuno si è preso la briga di migrare tutte le sue macchine
da RH a Debian e Gentoo un motivo ci sarà.
BTW, gli RPM uno se li può anche fare da solo; francamente, lasciare su 
applicazioni e kernel notoriamente buggati ha un che di suicida.

 da RH a Debian e Gentoo un motivo ci sarà.
Per Debian tanto di cappello, pero` non sempre e` la politica preferita
dalle aziende. Per fare un esempio, nell'azienda in cui sto attualmente
lavorando, vi sono ancora macchine che utilizzano Oracle 8.1.7 per far
girare gli applicativi che vengono utilizzati (e non perche` non abbiano i
soldi per passare ad una versione aggiornata)
Henryx