Tamanho de heap do Tomcat 6 - correto?
-
23-09-2019 - |
Pergunta
Estou executando vários Tomcats em uma caixa Red Hat e gostaria de configurar um tamanho de heap separado para cada um deles (algumas instâncias usam mais memória).
Posso definir o tamanho mínimo/máximo do heap bt inserindo o seguinte no arquivo catalina.sh:
CATALINA_OPTS="-Xms64m -Xmx256m"
Preciso adicionar 'exportar'?ou sejaexportar CATALINA_OPTS="-Xms64m -Xmx256m"
Solução
A melhor prática é colocar a configuração das variáveis de ambiente em um arquivo chamado setenv.sh
/.bat
na pasta bin.
O catalina.sh
script tem lógica para chamar esse script, se existir.
A razão pela qual isso é recomendado é porque torna portátil a configuração das variáveis de ambiente necessárias para sua instalação:você pode copiar facilmente setenv.sh
para outras instalações do Tomcat, você pode atualizar o Tomcat para uma versão mais recente (que pode substituir catalina.sh
), mas ainda tem o seu existente setenv.sh
.
Um exemplo de como definir o tamanho do heap dentro setenv.sh
:
export JAVA_OPTS='-Xmx784M`
Outras dicas
Se você adicionar isso a qualquer coisa na instalação do Tomcat, isso afetará todas as instâncias executadas nessa máquina.
Eu acho que você deseja definir Java_OPTs separadamente, em scripts separados, que cada um depois invoca o script de inicialização do Tomcat. Os scripts podem definir tamanhos de heap diferentes. Sim, você precisa exportar.