Apache è utilizzare troppe CPU

January 31

Apache è utilizzare troppe CPU


Quando una pagina Web viene caricata lentamente o non riesce a caricare a tutti, la velocità della connessione a Internet non può essere la colpa. A volte il computer su cui hai memorizzato la pagina Web viene messo in ginocchio a causa delle richieste elevate della CPU dall'applicazione server Apache Web. Ridurre l'utilizzo della CPU di Apache esaminando e apportare modifiche al proprio hardware del server o file di configurazione di Apache.

Considerazioni sull'hardware

Scarsa la configurazione e le prestazioni di hardware influisce negativamente del server le prestazioni di Apache. Se la CPU del server è lento, il tempo necessario per caricare moduli di Apache, eseguire script, analizzare il codice da pagine utilizzando il linguaggio di programmazione web noto come HTML, scrivere i log del server e servire i dati ai visitatori aumenterà. Se il server non ha abbastanza RAM, processi di Apache possono continuare ad utilizzare cicli di CPU durante l'attesa per il sistema operativo liberare memoria trasferendo i dati da e verso il file di swap. Aggiornare l'hardware può ridurre la percentuale di utilizzo della CPU di Apache da tutti i processi di Apache verrà eseguito più velocemente.

moduli Apache

Apache è stato progettato per essere un sistema modulare: Caratteristiche può essere aggiunto o rimosso ricompilando l'applicazione o apportando modifiche al file di configurazione. Se essi sono scelti con saggezza, moduli multi-processing di Apache - MPMs - ridurre l'utilizzo della CPU e migliorare le prestazioni del server Web. La MPM "mpm_winnt" riduce l'utilizzo della CPU su server Windows, lasciando ogni processo di Apache creare più thread contemporaneamente,-executing usando tecniche specificamente progettati per funzionare con i sistemi operativi basati su Windows NT. Per i sistemi Linux e Unix, scegliere tra l'alto traffico, l'uso a bassa memoria MPM "lavoratore" e la "prefork" MPM, che utilizza più memoria, ma funziona bene con moduli di Apache che non sono thread-safe.

CGI colli di bottiglia

Ogni volta che Apache esegue uno script Common Gateway Interface, viene creato un nuovo processo che aumenta l'utilizzo della CPU e la memoria complessiva del server. Inoltre, le lingue CGI come Perl e Python richiedono un interprete per l'esecuzione, il che aumenta l'utilizzo della CPU ancora di più. FastCGI è un'estensione dello standard CGI che permette script CGI compatibili per l'esecuzione in un unico processo server. Un processo FastCGI è persistente e non deve essere avviato e fermato ogni volta che uno script CGI deve essere eseguito. FastCGI è disponibile come modulo Apache "mod_fastcgi."

Versioni di Apache

L'aggiornamento può ridurre il server Web Apache utilizzo della CPU spostando il sistema all'ultima versione stabile del software. Apache versione 2.4 include molte correzioni di bug, funzionalità aggiunte e miglioramenti delle prestazioni. Per esempio, la versione 2.4 può essere compilato per includere molte MPM differenti di attivare selettivamente modificando il file di configurazione di Apache, quindi riavviarlo. Miglioramenti al modulo di caching dei dati, "mod_cache", riduce il numero di cicli di CPU utilizzate per individuare e recuperare le informazioni da database o unità disco. l'utilizzo di memoria Apache 2.4 di è ridotto rispetto alla versione 2.2.