JBoss: Application server baixa, mas as conexões continuam ativas no Oracle

Contribuição Marcos Esplugues

A conexão de fato não existirá mais desde que o application server esteja desligado; quem estaria ligado então? Só faltaria desligar a máquina e a conexão continuar… onde estará o problema.

Realmente não tem nada a ver com a aplicação. O Oracle mantém as sessões porque ele não sabe que o client caiu. Há um parâmetro que pode  ser configurado no arquivo sqlnet.ora que faz com que o Oracle, de tempos em tempos, verifique se o cliente está vivo. É o sqlnet_expire_time, configurado em segundos. Um valor muto baixo pode causar excesso de tráfego de rede. Um valor muito alto pode não ter serventia. A Oracle recomenda colocar 10 segundos neste parâmetro:

SQLNET.EXPIRE_TIME=10

É importante que isso não seja passado como uma recomendação ao cliente, mas como uma sugestão ao DBA do ambiente.

Published by

Claudio Cardozo

Ubuntu Kernel Team Membership, Certified SCRUM Master, System Architect, Open Source enthusiastic, Java and JavaFX passioned, OpenCRX Team, Theologist, minimalist lifestyle, eitaa!

Leave a Reply