Excesso de conexoes com o banco

3 respostas
pugnator

onde trabalho o dba esta chorando devido ao elevado numero de conexoes no banco, principalmente de um determinado sistema(413). Os sistemas sao em java.

o sistema que esta com 413 conexao usa hibernate,jpa, seam,ejb3,richfaces e postgres. No mapeamento usam cascade para qse tudo...

o que os caras alegam, é que existem muitas consutas e enquanto uma transacao nao finaliza as outras ficam aguardando gerando um numero alto de conexoes...

O que poderia estar causando isso ? Qual as possiveis solucoes ?

o sistema que trabalho esta só com 13 conexoes :)

o número de conexões está ficando alto, a ponto do servidor rejeitar conexões e até o momento,  hoje tivemos 116 conexões mortas... E o número continua crescendo.

A lista de conexões atualmente no servidor é:

platao=# SELECT client_addr, datname, usename, COUNT(*) FROM pg_stat_activity GROUP BY client_addr, datname, usename ORDER BY count dESC;
 client_addr  | datname  |  usename   | count
--------------+----------+------------+-------
 69.2.8.7     | platao    | gtt       |   413
 189.13.69.27 | platao    | gtt       |    55
 189.13.69.18 | platao    | gtt       |    55
 189.13.69.26 | platao    | gtt       |    55
 189.13.69.28 | platao    | gtt       |    54
 189.13.69.16 | platao    | gtt       |    54
 189.13.69.29 | platao    | gtt       |    54
 69.2.8.7     | easy  | easy    |    13
 69.1.3.200   | platao    | integracao |    13
 69.1.3.200   | juddi    | juddi      |    69
 189.13.69.25 | easy  | easy    |     3
              | platao    | postgres   |     1
 127.0.0.1    | postgres | postgres   |     1
              | platao    | pg91       |     1

3 Respostas

jtiagoarruda

Bom,
Teria que ver como esta sendo criado suas conexões, Singleton, Factory ou Peron-operation.
Se estas conexões esta sendo fechada corretamente.

http://javafree.uol.com.br/artigo/877162/Entendendo-o-pattern-Singleton.html
http://pt.scribd.com/doc/55978445/18/Fabrica-de-conexoes-Factory

Hebert_Coelho

Se você falou q eles usam cascade aí está um motivo. E se seu sistema utiliza open session in view esse problema ficaria mais evidente ainda.

FernandoFranzini

conexão travada (busy) no banco pode gerar tal comportamento…
Mas esse pool ta muito grande…deve milhares de usuários simultâneos…

Criado 24 de julho de 2012
Ultima resposta 24 de jul. de 2012
Respostas 3
Participantes 4