Problemas: Tomcat X Firebird

2 respostas
J

Olá!! Estou com um sério problema ao utilizar o Firebird com o Tomcat através do driver Interclient num servidor Conectiva 8. O problema é que a cada requisição para o Servlet, um novo processo do Firebird é criado e uma nova conexão é estabelecida também. Acontece que esse número de processos é limitado, e quando é ultrapassado tudo pára! Meu código está escrito como manda o figurino, a conexão está compartilhada entre as instâncias e é criada no jspInit() o que me leva a crer que este servlet está sendo descartado muito rápido porém o processo do Firebird correspondente não. Quando o Servlet não apresenta esse problema e consegue persistir, se ele ficar idle por muito tempo, a conexão com o banco é perdida (porém o objeto continua sendo válido) e uma exceção é disparada sendo o erro "Connection reset by peer". Alguém já passou por isso ou sabe se existe algum problema com o Tomcat ou Firebird ?

2 Respostas

B

Você pode tentar implementar um connection pool para evitar esse problema de limite de recursos.

Veja este projeto do Jakarta: http://jakarta.apache.org/commons/dbcp.html

J

Olá!! A implementação de um connection pool é o próximo passo a ser dado assim que soubermos o que está acontecendo com os servlets. O nosso pool já está escrito mas não adianta colocá-lo em funcionamento pois vai continuar o problema da conexão se perder e disparar um "Connection Reset by Peer". Imagina se a conexão marcada como disponível no pool se perde e é devolvida para o usuário como se fosse uma conexão válida ? Mais problemas!! Como não sabemos se isso é culpa do InterClient ou do Firebird, estamos migrando para o MySql 4 (está dando um trabalho fazer isso!).

Criado 20 de fevereiro de 2003
Ultima resposta 20 de fev. de 2003
Respostas 2
Participantes 2