JDBC PostgreSQL Performance

6 respostas
RogerioK

Olá pessoal,

Estou com uma dúvidas quanto a performance do postgresql com o java, estou achando muito lento minhas consultar, inserções no java…

Para cada query eu abro uma nova conexão, executo a query e por fim finalizando a conexão…

O ideal seria abrir somente uma conexão e todas as query´s utilizarem dela?

Abços

6 Respostas

E

Normalmente você (em uma aplicação Web) usa um pool de conexões. Aí, nesse caso, você empresta uma conexão do pool, usa-a, e então a devolve.

Em uma aplicação desktop, você pode até deixar uma conexão aberta direto, ou então usar um pool. Às vezes sua aplicação desktop é muitlthread (com várias threads tentando fazer várias consultas ao mesmo tempo) e nesse caso o pool é mais indicado.

j-menezes

No caso das consultas, principalmente grande, é necessário observar varios detalhes como por exemplo :
funções de agregações, indices, like, tudo isso precisa ser bem verificado e fazer as otimizações necessárias.

tambem aproveita e dá uma olhada no configurador do PostgreSQL em termos de mapeamento da memoria.

quebrado

Uso o pool de conexão tambem, e funfa belezinha.
Alias, não tenho que reclamar do “elefante”.
:slight_smile:

RogerioK

Bom é uma aplicação Desktop, eu fiz algumas classes de conexão já, porem ela abre e fecha a cada query executada, alguem tem alguem exemplo pratico de um pool?

Lembrando que estou priorizando o máximo de performance possivel

Abços!

bombbr

RogerioK:
Bom é uma aplicação Desktop, eu fiz algumas classes de conexão já, porem ela abre e fecha a cada query executada, alguem tem alguem exemplo pratico de um pool?
Lembrando que estou priorizando o máximo de performance possivel
Abços!

http://commons.apache.org/dbcp/

Exemplos:

http://svn.apache.org/viewvc/commons/proper/dbcp/trunk/doc/
Veja o exemplo BasicDataSourceExample.java

RogerioK

Olá, voltando aqui, tentei fazer a conexão suando DataSource e Connection Pool, mas minha aplicação pode fazer o uso de varios bancos de dados, por exemplo um local e um online, e pelo que vi para configurar um DS eu necessito comfigurar o arquivo Properties que é estático, porem a aplicação atual pega as variaves de conexão como ip user etc… de um arquivo config.ini que fica muito mais facil para min quando for instalar em um cliente só modificar este arquivo e nao mexer no código, há algum outro metododo de configurar o DS?

Criado 6 de dezembro de 2010
Ultima resposta 18 de jan. de 2011
Respostas 6
Participantes 5