| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/11/2003 23:24:09
|
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
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/11/2003 23:26:06
|
Paulo Silveira
Administrador
![[Avatar]](/images/avatar/a87ff679a2f3e71d9181a67b7542122c.jpg)
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
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/11/2003 23:45:59
|
louds
Moderador
![[Avatar]](/images/avatar/1e48c4420b7073bc11916c6c1de226bb.jpg)
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 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/12/2003 01:12:04
|
richardpeder
GUJ Master
![[Avatar]](/images/avatar/bd686fd640be98efaae0091fa301e613.jpg)
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)
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/12/2003 02:26:19
|
louds
Moderador
![[Avatar]](/images/avatar/1e48c4420b7073bc11916c6c1de226bb.jpg)
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 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/12/2003 09:10:51
|
wbsouza
JavaEvangelist
![[Avatar]](/images/avatar/9f61408e3afb633e50cdf1b20de6f466.jpg)
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
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/12/2003 09:18:31
|
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
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/12/2003 09:21:59
|
wbsouza
JavaEvangelist
![[Avatar]](/images/avatar/9f61408e3afb633e50cdf1b20de6f466.jpg)
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
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2003 00:16:32
|
andrejs
JavaTeenager
![[Avatar]](/images/avatar/c89e3ecd3f8ea0234e2c2.gif)
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 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/12/2003 00:31:17
|
cv
Moderador
![[Avatar]](/images/avatar/210f760a89db30aa72ca258a3483cc7f.jpg)
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.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/09/2011 12:19:17
|
pedroabs
Debugger
![[Avatar]](/images/avatar/cccb7f7cfe7acc3641e17927f820c159.jpg)
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 |
|
|
 |
|
|