Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Onde está o reaproveitamento de conexão no pool?

Na própria aula, cada vez que o instrutor executa o método main da classe TestaPoolConexoes, o número de conexões só aumentam. 15, 30... etc.

1 resposta
solução!

Olá Wellington, tudo bem com você?

Peço desculpas pela demora em obter retorno.

A connection pool funciona como uma camada intermediária entre a aplicação e o banco de dados e seu propósito é melhorar a performance nas operações de banco de dados que são custosas para o sistema.

Ela mantém algumas conexões abertas que podem ser solicitadas pela aplicação para fazer consultas e comandos no banco de dados, tirando a necessidade de cada vez que a aplicação precisar fazer alguma consulta, abra uma nova conexão, prepare um comando, execute e feche a conexão, pois a conexão já vai estar sempre aberta. Quando uma conexão é fechada da aplicação com a connection pool a conexão não é fechada de verdade, a connection pool apenas marca essa conexão como disponível para uso de outro componente ou aplicação.

Quando são abertas conexões além das permitidas pela connection pool podem acontecer duas coisas:

1 - Quando ainda existem espaços para conexões disponíveis, a connection pool cria uma nova conexão para uso da aplicação.

2 - Quando não existem espaços, é jogada uma exceção.

Portanto, a connection pool mantém conexões sempre abertas e espera que a aplicação requisite o uso delas, a fim de melhorar a performance, por não ter que ficar abrindo e fechando conexões com o banco de dados.

Para se aprofundar ainda mais, recomendo a leitura desse artigo sobre como a pool de conexões melhora a performance de uma aplicação

Fico à disposição.

Um grande abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!