Aplicação em produção instável

5 respostas
hesenger

Bom dia pessoal,

estou com uma aplicação Struts 2, Hibernate 3 e MySql que funciona perfeitamente
quando a executo em minha máquina, acessando o banco de dados remoto (em meu
hosting), mas quando coloco o war e faço o deploy neste servidor remoto, minha
aplicação fica instável, começando a dar erros após algum tempo de execução.

O stack resumidamente é este:

org.hibernate.exception.JDBCConnectionException: could not execute query
...
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException
...
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException

Pelo que podem ver parece que a conexão começa a falhar, mas não consegui
diagnostivar o porque, já que a versão do tomcat local e em meu servidor é a
mesma, e as configurações do server.xml também.

Se alguém tiver uma idéia do que pode ser, ou alguma dica de como verificar qual
o problema…

Obrigado.

5 Respostas

vitu

Já esperimentou aumentar o:

connection.pool_size

hesenger

Na verdade esta propriedade não está setada em meu hibernate.cfg pois estou usando
c3po, que está configurado da seguinte forma:

<property name="c3p0.min_size">3</property>
		<property name="c3p0.max_size">20</property>
		<property name="c3p0.timeout">5000</property>
		<property name="c3p0.max_statements">50</property>
vitu

Um pool de apenas 20 conexões atende sua aplicação em produção?

hesenger

No momento deveria atender, acho que nesta fase de testes
não passei de 5 usuários simultâneos.

Acha que pode ser esse o problema? Vou fazer um teste com
o máximo de 50. E posto aqui o resultado.

De qualquer modo já valeu o interesse.

hesenger

Consegui resolver o problema redefinindo o timeout.

Dando uma olhada na documentção notei que ele é configurado em milisegundos,
o que me resultava em 5 segundos para obter resposta do banco.

Acho que o problema ocorria pelo servidor de dados não ser o mesmo da aplicação.

A seguinte linha resolveu meus problemas:

<property name="c3p0.timeout">30000</property>
Criado 14 de fevereiro de 2009
Ultima resposta 15 de fev. de 2009
Respostas 5
Participantes 2