DEV Community

Filipe Macedo
Filipe Macedo

Posted on

Evite Custos Desnecessários: Diagnóstico e Otimização de Desempenho em Sua Aplicação

Se você costuma aumentar os recursos computacionais da máquina ao detectar lentidão na sua aplicação, isso pode acabar gerando custos desnecessários para a empresa no final do mês 🎈

Imagine uma aplicação com máquinas dedicadas para a API e o banco de dados MySQL. No início, tudo estava voando, usuários felizes, mas com o tempo, a aplicação começou a ficar extremamente lenta.

Antes de sair aumentando os recursos, é importante entender o que está acontecendo. Nesse momento, vamos dar uma olhada nas métricas. Ao analisar as métricas da API, observamos picos de 40% de CPU e 50% de memória.

A boa notícia? Ainda temos recursos de sobra. A pergunta é: devemos aumentar os recursos da máquina agora? Eu não acredito que seja necessário.

Se o problema não está na API, partimos para o próximo componente, o banco de dados. Lá, identificamos picos de 95% de CPU e 80% de memória em alguns momentos. Mas calma, ainda não é hora de aumentar os recursos dessa máquina. Precisamos entender o que está acontecendo.

Notamos que a tabela cresceu consideravelmente. Agora, só precisamos analisar se a QUERY está performando bem com o comando EXPLAIN. Com os resultados, entendemos que a QUERY estava varrendo toda a base de dados e não estava utilizando index. Por ora, otimizar a query e criar os indexes seria o suficiente para que a aplicação voltasse ao normal.

Espero que este post apareça na sua timeline antes da próxima fatura da AWS 🤣

Até mais! 👋

Top comments (0)