Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Dúvida sobre performance aplicando o Chain of Responsibility

Olá, gostaria de saber se ao aplicar o padrão Chain of Responsibility em cenários com várias consultas à base de dados (como no exemplo da aula/vídeo) não pode haver uma piora na performance da aplicação? Pergunto porque me pareceu que, embora mais organizado e legível, o novo código irá executar mais consultas à base se comparado ao código antes do refactor.

2 respostas
solução!

Olá Alexsandro!

Você levantou uma questão muito pertinente sobre o impacto na performance ao aplicar o padrão Chain of Responsibility, especialmente em cenários que envolvem várias consultas ao banco de dados.

De fato, ao aplicar esse padrão, você pode acabar realizando mais consultas ao banco de dados, pois cada validador pode fazer sua própria verificação. Isso pode, sim, impactar a performance da aplicação se não for bem gerenciado.

Não tem uma resposta certa de como lidar com essa situação, pois vai depender de cada caso. Pode ser que as consultas utilizem o cache de primeiro nível da JPA, evitando várias consultas ao banco de dados e isso reduziria o impacto na performace. Pode ser que a funcionalidade não seja utilizada com muita frequência ou tenham poucos usuários na aplicação, sendo então aceitável essa implementação.

Ou seja, é necessário primeiramente avaliar se realemente essa funcionalidade está causando um gargalo de performance e caso esteja, aí sim pensar em uma estratégia de refatoração para contornar o problema.

Espero ter ajudado e bons estudos!

Munto obrigado pelo retorno Rodrigo. Entendi sua resposta. Deve ser feita uma análise antes da implementação.