Connection Pool  XML
Índice dos Fóruns » Arquitetura de Sistemas
Autor Mensagem
vaznet
Smalltalk

Membro desde: 30/11/2003 23:19:59
Mensagens: 2
Offline

Desculpe a ignorancia, mas alguem poderia me explicar a vantagem de utilizar um connection pool, ao invés de conectar diretamente ao banco.

em um sistema web com aproximadamente 100 a 200 usuário simultaneos é a melhor solução ou alguem tem alguma outra sugestao?

obrigado
Paulo Silveira
Administrador
[Avatar]

Membro desde: 07/08/2002 18:38:50
Mensagens: 4154
Localização: São Paulo
Offline

nao eh a melhor solucaol, eh a unica
se vc nao usar o connection pool, seu sistema vai ficar lento de tatnas conexoes tcp/ip que voce for ficar abrindo e fechando com o banco de dados, sem contar o overhead pro BD, que pode nao aguentar

http://blog.caelum.com.br twitter: @paulo_caelum


[Email] [WWW]
louds
Moderador
[Avatar]

Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline

A outra solução é voce usar um banco de dados embarcado, ai o custo de se conectar é quase nulo.

Ou então um driver JDBC que não seja de camada 4 e use JNI para se conectar ao banco de forma mais eficiente que tcp/ip (named pipes, shm, unix socket, etc).

Se tua aplicação é para intranet, ou um ambiente controlado, uma solução um pouco melhor que pool seria usar 1 conecção por sessão. Mas cuidado, use somente em ambientes controlados!!

Moral da historia, a solução genérica é usar um pool, não só para conecções, mas para a maioria dos recursos que demoram para ficarem disponiveis.

http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda
[ICQ]
richardpeder
GUJ Master
[Avatar]

Membro desde: 15/10/2002 08:39:04
Mensagens: 1548
Localização: Minas Tirith
Offline

concordo com o Paulo...porém, o programador deve se atentar a sempre estar "devolvendo" a conexão, pois senão ficam várias conexões perdidas, e se o cara faz uma conectionpool limitada, uma hora "acaba" as conexões dele e o código terá que ser verificado para que seja devolvida as conexoes quando não estiver acontecendo.

Atente-se a isso.

ate mais...


"I see in your eyes the same fear that would take the heart of me. A day may come when the courage of men fail. When we forsake our friends and break all bonds of fellowship, but it is not this day. This day we fight!" (Discurso de Aragorn no Portão Negro de Mordor)


[Email] [WWW] [MSN] [ICQ]
louds
Moderador
[Avatar]

Membro desde: 29/04/2003 23:09:15
Mensagens: 4061
Localização: São Paulo
Offline

richardpeder wrote:concordo com o Paulo...porém, o programador deve se atentar a sempre estar "devolvendo" a conexão, pois senão ficam várias conexões perdidas, e se o cara faz uma conectionpool limitada, uma hora "acaba" as conexões dele e o código terá que ser verificado para que seja devolvida as conexoes quando não estiver acontecendo.

Atente-se a isso.

ate mais...


O DBCP tem 1 leak checker muito bom. Já me ajudou a resolver vários leaks de código que não é meu.

http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda
[ICQ]
wbsouza
JavaEvangelist
[Avatar]

Membro desde: 11/09/2002 11:19:13
Mensagens: 412
Localização: São Paulo / SP
Offline

richardpeder wrote:concordo com o Paulo...porém, o programador deve se atentar a sempre estar "devolvendo" a conexão, pois senão ficam várias conexões perdidas, e se o cara faz uma conectionpool limitada, uma hora "acaba" as conexões dele e o código terá que ser verificado para que seja devolvida as conexoes quando não estiver acontecendo.

Atente-se a isso.

ate mais...


Geralmente um Connection Pool bem implementado tem um idle timeout para prevenir que os recursos da maquina se esgotem. Assim, se vc ficar muito tempo sem fazer nada com uma conexão o próprio connection pool resgata a conexão e grava no log que vc está fazendo as coisas de forma incorreta.

É lógico que é boa pratica de programação fechar os recursos que vc abre, mas de qq forma o connection pool pode te dar alguns lembretes caso vc se esqueça.


[]s, Welington B. Souza
[Email] [WWW]
vaznet
Smalltalk

Membro desde: 30/11/2003 23:19:59
Mensagens: 2
Offline

valeu galera

Aproveitando a oportunidade, um sistema que tenha em torno de 100 a 200 usuários on-line simultaneos, pode ser rodado no Tomcat sem problemas?

Vi em algum local que teria uma melhor utilizacao se integrasse com um outro web server, alguem sabe me explicar o por que?

No meu caso nao sera possivel integrar com outro web server ja que as paginas sao todas dinamicas em jsp
wbsouza
JavaEvangelist
[Avatar]

Membro desde: 11/09/2002 11:19:13
Mensagens: 412
Localização: São Paulo / SP
Offline

vaznet wrote:Vi em algum local que teria uma melhor utilizacao se integrasse com um outro web server, alguem sabe me explicar o por que?


O web server é mais rapido para manipular páginas estáticas (htmls que não modificam).

[]s, Welington B. Souza
[Email] [WWW]
andrejs
JavaTeenager
[Avatar]

Membro desde: 29/08/2003 15:50:29
Mensagens: 168
Localização: Jundiaí
Offline

Galera ...

Eu andei lendo algumas dúvidas pelo site.
Entendi a finalidade do Conection Pool, porém eu não sei, não tenho idéia de como fazer um Conection Pool ...

Será que alguém poderia me ajudar com algum fonte ??? ou alguma expelicação ?????

Obrigado

Abraços
Obrigadoooo
André J S
[Email] [ICQ]
cv
Moderador
[Avatar]

Membro desde: 04/04/2003 00:32:12
Mensagens: 7839
Localização: São Paulo, SP
Offline

Voce nao precisa *fazer* um connection pool... vc so precisa usar um! O louds ja ate deu a dica do DBCP, mas existem diversas outras implementacoes disponiveis, e vai do seu ambiente escolher a melhor/mais facil de usar.
[Email] [WWW] [Yahoo!] [MSN] [ICQ]
pedroabs
Debugger
[Avatar]

Membro desde: 08/12/2008 13:33:12
Mensagens: 62
Localização: São Paulo
Offline

Implementei o meu Connection Pool:

http://pedroabs.wordpress.com/2011/09/27/connection-pool-em-java-pool-de-conexoes/

MCP - VB6
SCJP / OCJP 6
-----------------------------
pedroabs.wordpress.com
http://twitter.com/pedroabs
[WWW]
 
Índice dos Fóruns » Arquitetura de Sistemas
Ir para:   
Powered by JForum 2.1.8 © JForum Team