Julgue o item a seguir, no que diz respeito a conceitos arqu...
Julgue o item a seguir, no que diz respeito a conceitos arquiteturais de cloud computing e virtualização, à otimização de topologias para sistemas de missão crítica, à otimização e às rotinas das tecnologias de armazenamento e a ciclos de lançamento e metodologias de automação em DevOps.
Quando um servidor de aplicação recebe muitas requisições simultâneas, usar um pool de conexões com o banco de dados ajuda a poupar recursos, pois evita o peso e a lentidão decorrentes dos atos de abrir e fechar conexões TCP continuamente.
Comentários
Veja os comentários dos nossos alunos
Alternativa Correta: Certo
A afirmativa está certa e descreve exatamente o propósito primário de um Pool de Conexões (Connection Pool).
Em uma arquitetura sem pool, cada vez que um usuário faz uma requisição (ex: carregar a página inicial), a aplicação precisa ir até o banco de dados, fazer o Handshake TCP (cumprimento de 3 vias), autenticar usuário e senha, alocar memória, realizar a consulta e, por fim, fechar a conexão. Isso consome muito processamento, memória e tempo (latência de rede). Se 1.000 usuários acessarem ao mesmo tempo, o banco pode simplesmente travar ao tentar abrir 1.000 conexões do zero.
Connection pool: O servidor de aplicação cria um "lote" (pool) de conexões pré-abertas e ativas com o banco de dados logo que o sistema é iniciado.
Como funciona na prática: Quando uma requisição chega, ela "pega emprestada" uma dessas conexões que já estão prontas. Após terminar a consulta, em vez de fechar a conexão TCP, a aplicação apenas a "devolve" para o pool, deixando-a livre para o próximo usuário. Isso elimina todo o gargalo de ficar abrindo e fechando sessões continuamente.
R
A pool de conexão dosar, as conexões diretamente com o banco, economizando recursos. Em vez de um usuario do banco sempre abrir uma conexão com o banco, por que não esse usuário utilizar uma conexão ainda valida na pool para se conectar ao banco ? muito mais eficiente
Mecanismo: Reutilização de conexões TCP e sessões de autenticação ativas via pool.
Benefício: Redução de latência de rede (handshakes SYN/ACK/TLS) e eliminação do overhead de CPU/memória no SGBD.
A questão descreve com precisão a principal finalidade de se utilizar um Pool de Conexões (Connection Pool) na camada de persistência e integração em arquiteturas de software.
- O Custo de Criar Conexões Físicas: Apertar o "handsake" para abrir uma nova conexão com um Banco de Dados Relacional envolve a negociação do protocolo de rede TCP (Três Vias / Three-way Handshake), autenticação, alocação de memória do servidor e criação de processos do SGBD. Esse ato é extremamente lento e "pesado" em consumo de CPU e RAM.
- Como Funciona o Pool de Conexões (Connection Pooling): Em vez de abrir e fechar uma conexão a cada requisição HTTP que chega:
- O Servidor de Aplicação cria e mantém um conjunto pré-alocado e fixo de conexões abertas (o Pool).
- Quando uma requisição precisa consultar o banco, ela apenas pede uma conexão emprestada do pool.
- Ao terminar a consulta, a aplicação devolve a conexão ao pool (não fecha o socket TCP). A conexão fica pronta para ser reutilizada pelo próximo cliente.
- Economia e Escalabilidade: Isso evita a degradação do sistema sob alta carga de requisições simultâneas e impede o estouro de limites de recursos tanto na aplicação quanto no banco de dados.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo