Em uma reunião técnica sobre a construção de um sistema ASP....

Próximas questões
Com base no mesmo assunto
Q75431 Programação
Em uma reunião técnica sobre a construção de um sistema ASP.NET, um administrador de banco de dados recomendou que fosse utilizado Connection Pooling. Essa técnica é caracterizada por
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: D - permitir o reúso de conexões de banco de dados.

O tema da questão aborda um conceito importante no desenvolvimento de aplicações que interagem com bancos de dados, especialmente em ambientes .NET, que é o Connection Pooling. Para responder a essa questão, é necessário entender o que é Connection Pooling e porque ele é benéfico em aplicações que necessitam de acesso frequente a um banco de dados.

O Connection Pooling é uma técnica usada para melhorar o desempenho de execução de comandos em um banco de dados. Basicamente, ao invés de abrir e fechar uma conexão com o banco de dados a cada operação, a aplicação mantém um "pool" (conjunto) de conexões abertas e as reutiliza conforme necessário. Isso reduz o custo de criação e destruição de conexões, que são operações relativamente caras em termos de recursos e tempo, e assim melhora a eficiência geral do sistema.

A razão pela qual a alternativa D está correta é que ela precisamente captura a essência do Connection Pooling. Ao permitir que as conexões sejam reutilizadas, o sistema evita o overhead associado ao processo de estabelecer uma nova conexão com o banco de dados a cada requisição, o que inclui negociação de rede, autenticação, criação de sessão, entre outros. Portanto, o reúso de conexões contribui significativamente para a otimização do acesso ao banco de dados em aplicações ASP.NET.

As outras alternativas não descrevem adequadamente o conceito de Connection Pooling:

  • A alternativa A erra ao sugerir que o Connection Pooling tem algo a ver com a verificação de carga do banco de dados, o que na verdade não é sua função.
  • A alternativa B menciona a prevenção de ataques de SQL Injection, que é uma preocupação de segurança e não tem relação direta com a gerência de conexões de banco de dados.
  • A alternativa C fala sobre impedir vazamento de memória em conexões de usuários, o que é uma preocupação válida em desenvolvimento de software, mas não é a característica definidora do Connection Pooling.
  • A alternativa E discute o uso de uma camada de ORM (Object-Relational Mapping) como o NHibernate, o que é uma técnica para mapear objetos em código para tabelas de banco de dados, mas novamente, isso não tem relação direta com o gerenciamento de conexões que é o foco do Connection Pooling.

Compreender o Connection Pooling é crucial para qualquer desenvolvedor que trabalhe com aplicações que necessitem de interações frequentes e eficientes com um banco de dados, como é comum em sistemas desenvolvidos em ASP.NET.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

A técnica do Connection pooling  permite a uma aplicação reusar conexões que existem em um pool ao invés de repetidamente fechar e criar novas conexões. Isto pode aumentar significativamente o desempenho e a escalabilidade das aplicações pois permite que um menor número de conexões atenda as requisições por conexões de uma aplicação visto que todas as conexões já estão prontas e criadas no pool a espera de serem utilizadas.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo