Le impostazioni dello spazio su heap di Tomcat non sembrano applicate

2

Ho un'installazione di Tomcat 6 in Ubuntu 10.04 e voglio aumentare lo spazio di Java Heap, sono andato a /etc/default/tomcat6 e non commentato e ho cambiato la seguente riga:

JAVA_OPTS="-Djava.awt.headless=true -Xmx1024m"

Tuttavia, quando sono passato alla pagina Stato di Tomcat Manager, ho letto:

JVM
Free memory: 125.29 MB Total memory: 382.43 MB Max memory: 510.43 MB

Quindi sono andato a controllare il mio script /etc/init.d/tomcat6 e ho aggiunto echo $TOMCAT_SH , appena prima di start-stop-daemon --start , per verificare che la variabile fosse effettivamente passata, e ho ottenuto:

# /etc/init.d/tomcat6 start
* Starting Tomcat servlet engine tomcat6
'set -a; JAVA_HOME="/usr/lib/jvm/java-6-openjdk"; source "/etc/default/tomcat6"; CATALINA_HOME="/usr/share/tomcat6"; CATALINA_BASE="/var/lib/tomcat6"; JAVA_OPTS="-Djava.awt.headless=true -Xmx1024m -XX:+UseConcMarkSweepGC -Djava.net.preferIPv4Stack=true"; CATALINA_PID="/var/run/tomcat6.pid"; CATALINA_TMPDIR="/tmp/tomcat6-tmp"; LANG="en_GB"; JSSE_HOME="/usr/lib/jvm/java-6-openjdk/jre/"; cd "/var/lib/tomcat6"; "/usr/share/tomcat6/bin/catalina.sh" start'
...done.

Che sembra OK, quindi mi chiedevo perché Tomcat manager dice che ho solo 510Mb di memoria massima.

Come posso accertarmi che l'impostazione della memoria sia stata applicata?

    
posta stivlo 21.08.2012 - 15:38

2 risposte

2

Sto impostando le Opzioni Java nel mio file .profile (proprio sotto / home / yourUserName /) a livello globale.

Tutti i processi Java inizieranno con questi parametri finché li inizi come utente corrente (non sudo)

aggiungi solo

## set Java Options for the JVM
export _JAVA_OPTIONS="-Xmx1024m -Xms512m -XX:MaxPermSize=256m"

alla fine del file .profile,

Un'altra possibilità: metti l'esportazione all'inizio di uno script di avvio di tomcat. dovrebbe funzionare anche.

cioè.

#!/bin/bash
## set Java Options for the JVM
export _JAVA_OPTIONS="-Xmx1024m -Xms512m -XX:MaxPermSize=256m"

##start Tomcat
/etc/init.d/tomcat6 start
    
risposta data mondjunge 21.08.2012 - 15:49
3

quello che usiamo comunemente è mettere JAVA_OPTS e CATALINA_OPTS nel file /etc/bash.bashrc alla fine. Quindi ogni utente ha accesso a OPTS anche all'utente tomcat.

Per monitorare se le tue modifiche sono applicate puoi usare 'ps -AfH | comando di grep tomcat, che mostrerà tutti i processi di tomcat compresi i loro parametri di avvio.

    
risposta data jpee 30.11.2012 - 14:34

Leggi altre domande sui tag