26.5. Ottimizzazione delle prestazioni

Fate clic sulla linguetta Ottimizzazione delle prestazioni per configurare il numero massimo di processi figli ammessi e le opzioni Server HTTP Apache per le connessioni client. Le impostazioni predefinite per queste opzioni si addicono alla maggior parte delle situazioni. Se le alterate, le prestazioni generali del vostro server Web potrebbero risentirne.

Figura 26-11. Ottimizzazione delle prestazioni

Impostate Numero massimo di connessioni sul numero massimo di richieste client che il server dovrà gestire contemporaneamente. Per ciascuna connessione viene creato un processo figlio httpd. Dopo che è stato raggiunto il numero massimo di processi, nessuno sarà più in grado di connettersi al server Web fino a quando uno dei processi figli in corso non si libera. Questa opzione corrisponde alla direttiva MaxClients.

Sospensione della connessione quantifica, in termini di secondi, l'attesa del server per la ricezione e la trasmissione durante le comunicazione Nello specifico, Sospensione della connessione definisce quanto tempo aspetterà il server prima di ricevere una richiesta GET, quanto tempo dovrà attendere prima di ricevere pacchetti TCP su richieste POST o PUT e quanto tempo trascorrerà dal momento in cui degli ACK rispondono ai pacchetti TCP. Per default, Sospensione della connessione è impostato su 300 secondi, un valore indicato nella maggior parte delle situazioni. Questa opzione corrisponde alla direttiva TimeOut.

Impostate la direttiva Richieste massime per connessione sul numero massimo di richieste autorizzate per ciascuna connessione persistente. Il valore di default è 100 e si adatta alla maggior parte delle situazioni. Questa opzione corrisponde alla direttiva MaxRequestsPerChild.

Se selezionate l'opzione Permetti richieste illimitate per connessione, la direttiva MaxKeepAliveRequests viene impostata su 0 e sarà autorizzato un numero illimitato di richieste.

Se deselezionate l'opzione Permetti connessioni persistenti, la diretiva KeepAlive viene impostata su "falso". Se invece la selezionate, la direttiva KeepAlive viene impostata su "vero" e la direttiva KeepAliveTimeout sul numero stabilito come valore per Sospensione per la connessione successiva. Questa direttiva determina il numero di secondi per i quali il server, prima di chiudere la connessione, attenderà una nuova richiesta dopo averne soddisfatta una precedente. Una volta ricevuta la nuova richiesta, viene applicato il valore di Sospensione della connessione.

Impostando Connessioni persistenti su un valore più alto, si rischia di far rallentare il server, a seconda del numero di utenti che stanno cercando di connettersi. Più è altro il numero, maggiore sarà il numero di processi in attesa di una nuova connessione dall'ultimo client che si è collegato.