Tempo aproximado para leitura: 00:06:09 min
Dúvida
Como configurar múltiplas instâncias do Tomcat em um único ambiente?
Ambiente
Framework - Framework (Linha Datasul) – Tomcat – Todas as versões
Solução
O Datasul for THF - TOTVS HTHML Framework armazena todas as informações no banco de dados. Por isso, algumas informações relacionadas ao nome e porta da instância do Tomcat permanecem as mesmas para todas as instâncias que acessem este ambiente. Este problema pode ser contornado através da utilização da propriedade totvs.envprop.group, a qual é descrita no procedimento abaixo:
1. Edite o arquivo conf\context.xml da instância do Tomcat;
2. Insira uma nova tag conforme exemplo abaixo, a qual irá determinar a identificação desta instância, aqui denominada Tomcat02:
<Environment name="totvs.envprop.group" type="java.lang.String" value="Tomcat02"/>
Abaixo um exemplo do arquivo context.xml completo, apenas para entendimento de como é realizada a configuração:
<?xml version="1.0" encoding="UTF-8" ?>
<Context crossContext="true">
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>WEB-INF/tomcat-web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
<Environment name="totvs.appserver" type="java.lang.String" value="AppServer://JVN019401881:5162/DTS12THF-8680"/>
<Environment name="totvs.envprop.group" type="java.lang.String" value="Tomcat02"/>
</Context>
3. Salve o arquivo e reinicie o Tomcat.
Este procedimento deve ser executado quando existir mais de um Tomcat que acessará o mesmo ambiente do Datasul for THF, onde neste caso deverá ser eleita uma instância primária, no qual não deverá ser informada a tag e assim mantendo os dados Defaults do seu ambiente e para cada instância adicional, deverás informar a tag agrupadora. Segue um exemplo com três instâncias Tomcat:
Na primeira instância do Tomcat não deverá ser informada a tag, assim compondo os dados Defaults do ambiente.
Na segunda instância do Tomcat, informe no conxtext.xml a seguinte linha:
<Environment name="totvs.envprop.group" type="java.lang.String" value="Tomcat02"/>
Na terceira instância do Tomcat, informe no conxtext.xml a seguinte linha:
<Environment name="totvs.envprop.group" type="java.lang.String" value="Tomcat03"/>
A partir deste momento, a segunda e terceira instância do Tomcat possuirão suas parametrizações exclusivas para cada instância, já a primeira instância manterá os dados Defaults do sistema, ou seja, seriam as parametrizações destinadas a esta primeira instância, bem como caso o usuário acesse a segunda ou terceira instância e não localizar a parametrização específica, o sistema buscará desta primeira instância.
Importante
A definição de uma instância de Tomcat primária - Default é obrigatória para o pleno funcionamento do Datasul for THF.
Deve-se observar também o quesito de timeout no Apache e na configuração do serviço do balanceamento.
Saiba mais
Para configuração do timeout do Apache consulte o documento DTS4THF - Timeout do Apache para o Datasul for THF utilizando Apache
0 Comentários