Sei sulla pagina 1di 4

Ottimizzazione dei sistemi Linux

http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.express.doc/info/exp...

Express (piattaforme distribuite e Windows), Versione 6.0.x > Ottimizzazione delle prestazioni > Ottimizzazione dell'ambiente dell'applicazione > Ottimizzazione dei sistemi operativi

Application Server - Express, Versione 6.0.x Sistemi operativi: AIX, HP-UX, Linux, Solaris, Windows

Personalizzare la tabella dei contenuti e ricercare i risultati

Ottimizzazione dei sistemi Linux


Questo argomento descrive come ottimizzare il sistema operativo Linux per ottimizzare le prestazioni di WebSphere Application Server.

Informazioni su questa attivit


Quando si ha un problema di prestazione, controllare che le impostazioni del sistema operativo determinino se sono appropriate per l'applicazione. Poich il sistema operativo Linux non un prodotto WebSphere Application Server, tenere presente che pu cambiare e che i risultati possono variare.

Procedura
Configurare le seguenti impostazioni e variabili in base alle proprie necessit: Parametro timeout_timewait Descrizione: determina il tempo che deve trascorrere prima che il TCP/IP possa rilasciare una connessione chiusa e riutilizzare le relative risorse. L'intervallo tra la chiusura e il release noto come stato TIME_WAIT o stato 2MSL, due volte la durata massima del segmento. Durante questo intervallo di tempo, riaprire la connessione sul client e sul server meno dispendioso dello stabilire una nuova connessione. La riduzione del valore di questa voce consente al TCP/IP di rilasciare connessioni chiuse pi veloci, fornendo pi risorse per nuove connessioni. Regolare questo parametro se l'applicazione in esecuzione richiede una creazione e un release rapidi di nuove connessioni, e la velocit di trasmissione bassa a causa di un numero elevato di connessioni in stato TIME_WAIT. Modalit di visualizzazione o impostazione: Immettere il seguente comando per impostare il parametro timeout_timewait su 30 secondi: echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout SUSE Linux Enterprise Server 8 (SLES 8) SP2A - ottimizzazione sched_yield_scale Descrizione: lo scheduler di Linux particolarmente sensibile ad una eccessiva commutazione dei contesti, per cui nella distribuzione del kernel SLES 8 sono state integrate correzioni che introducono un ritardo quando l'elaborazione fornita da un thread. Questa correzione abilitata in modo in modo automatico in SLES 8 SP3, ma necessario che sia abilitato in modo esplicito in SLES 8 SP2A o versione successiva. Modalit di visualizzazione o impostazione: 1. Aggiornare il service pack di SLES 8 a SP2A. 2. Digitare il comando sysctl -w sched_yield_scale=1. Valore predefinito: 0 Valore consigliato: 1 Aggiornamento del kernel RedHat Advanced Server 2.1 Descrizione: Gli aggiornamenti del kernel per RedHat Advanced Server 2.1 hanno implementato le modifiche che riguardano la prestazione di WebSphere Application Server, specialmente la replica delle sessioni HTTP memory-to-memory.

1 di 4

28/02/2012 12:31

Ottimizzazione dei sistemi Linux

http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.express.doc/info/exp...

Modalit di visualizzazione o impostazione: 1. Immettere il comando uname -a 2. Se si esegue un kernel precedente alle versione 2.4.9-e.23, passare almeno al kernel RedHat Advanced Server 2.1, ma preferibilmente all'ultimo supportato. Valore predefinito: 2.4.9-e.3 Valore consigliato: 2.4.9-e.23 Descrittori dei file Linux (ulimit) Descrizione: Specifica il numero di file aperti supportati. L'impostazione predefinita , in genere, sufficiente per la maggior parte delle applicazioni. Se il valore impostato per questo parametro troppo basso, potrebbe essere visualizzato un errore di apertura file, un errore di allocazione memoria o di instaurazione della connessione. Modalit di visualizzazione o impostazione: selezionare le pagine di riferimento UNIX sul comando ulimit per la sintassi di shell diverse. Per impostare il valore del comando ulimit su 8000 per la shell KornShell (ksh), immettere il comando ulimit -n 8000. Utilizzare il comando ulimit -a per visualizzare i valori correnti per tutti i vincoli sulle risorse del sistema. Valore predefinito: Per SUSE Linux Enterprise Server 9 (SLES 9), il valore predefinito 1024. Valore consigliato: 8000 Backlog di connessione Descrizione: Modificare i seguenti parametri quando le richieste di connessione in entrata ad alta velocit risultano in problemi di connessione: echo 3000 > /proc/sys/net/core/netdev_max_backlog echo 3000 > /proc/sys/net/core/somaxconn TCP_KEEPALIVE_INTERVAL Descrizione: Determina il tempo di attesta tra le prove dell'intervallo isAlive. Come visualizzare o impostare: Immettere il seguente comando per impostare il valore: echo 15 > /proc/sys/net/ipv4/tcp_keepalive_intvl Valore predefinito: 75 secondi Valore consigliato: 15 secondi TCP_KEEPALIVE_PROBES Descrizione: Determina il numero di prove prima del timeout. Come visualizzare o impostare: Immettere il seguente comando per impostare il valore: echo 5 > /proc/sys/net/ipv4/tcp_keepalive_probes

Valore predefinito: 9 secondi Valore consigliato: 5 secondi Allocazione pagine ampie per l'heap di JVM (Java virtual machine) (prove con SLES 9) Alcune applicazioni richiedono un heap molto ampio per ottime prestazioni. Il sovraccarico di CPU nella gestione di ampi heap pu essere ridotto utilizzando il

2 di 4

28/02/2012 12:31

Ottimizzazione dei sistemi Linux

http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.express.doc/info/exp...

supporto per "le pagine ampie" fornito dal CPU e dal sistema operativo. Il seguente esempio presuppone una dimensione di pagina ampia di 4MB ed una dimensione heap desiderata di 2300MB. 1. Definire le seguenti tre impostazioni mediante un file sysctl.conf, ubicato in /etc/sysctl.conf. Nota: necessario disporre di autorizzazioni root su questo file. Inoltre, verificare che il file non sia contrassegnato come sola lettura prima di provare ad apportare le modifiche. a. Impostare il numero di pagine ampie (2300MB = 575 * 4MB) emettendo il seguente comando: vm.nr_hugepages = 575 b. Impostare la dimensione massima del segmento condiviso su 2300MB pi circa 95MB in pi (2511724800 = 2300MB * 1048576 byte/MB + 100000000 byte) emettendo il seguente comando: kernel.shmmax = 2511724800 c. Impostare la quantit totale di memoria da condividere emettendo il seguente comando: kernel.shmall = 2511724800 2. Impostare l'opzione JVM di Xmx su 2300 MB. 3. Riposizionare il testo di programma su un indirizzo pi basso di memoria virtuale (0x10000000) per fornire pi spazio di indirizzo per un heap pi ampio. Su SUSE Linux Enterprise Server 9, immettere il comando riportato di seguito per riposizionare il testo nello script che richiama la JVM o in un file .profile: echo "0x10000000" > /proc/self/mapped_base

Risultati
Questa procedura di ottimizzazione migliora la prestazione di WebSphere Application Server sul sistema operativo Linux.

Operazioni successive
Dopo aver ottimizzato il sistema operativo per la prestazione, consultare altri argomenti sull'ottimizzazione per diversi suggerimenti sull'ottimizzazione.

In queste informazioni ...


Attivit correlate Preparazione dei sistemi Linux per l'installazione

IBM Redbook, dimostrazioni, istruzioni ed altro ancora


Utilizzare Suggerimenti di IBM per richiamare il contenuto

3 di 4

28/02/2012 12:31

Ottimizzazione dei sistemi Linux

http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.express.doc/info/exp...

Ottimizzazione sistemi Windows Ottimizzazione dei sistemi AIX Ottimizzazione dei sistemi Solaris Ottimizzazione sistemi HP-UX

relativo da ibm.com e altro, a scopo informativo. Tale funzione richiede l'accesso a Internet.

Argomento attivit Termini di utilizzo

Commenti

Ultimo aggiornamento: Feb 21, 2009 6:44:10 PM CST http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.websphere.express.doc/info/exp/ae/tprf_tunelinux.html

4 di 4

28/02/2012 12:31