Qual a Necessidade de um Roteiro para Análise de Performance?
Vamos observar os dados coletados junto à usuários de diversos tipos de sistema e segmentos no mercado:
- Cerca de milhares de feedbacks relatados por usuários indicam problemas de performance dos sistemas, onde mais de 85% estão com indicadores que desqualificam os sistemas.
- Nos últimos anos houve um aumento de mais de 30% no número de solicitações relacionadas à lentidão nos diversos sistemas avaliados, com significado importante na insatisfação dos clientes.
Baseado nisso, é necessário sempre: coletar informações -> em seguida entender e dar um significado -> posteriormente planejar uma ação -> finalmente agir na causa do problema.
Um roteiro ajuda muito a dar visibilidade para as ações que a Benner está executando em relação à performance de seus sistemas (buscando dar respostas aos clientes e ao mercado), mostrando um pouco do que utilizamos para enfrentar e corrigir problemas de performance. Isso gera o roteiro, que possibilita responder aos problemas de forma muito mais rápida. Além de evidenciar que todos são responsáveis por seguir um processo.
O principal propósito de um roteiro é auxiliar o suporte dos sistemas, ajudando a identificar o mais breve possível as causas de um problema de performance, além de apoiar os desenvolvedores na construção de códigos cada vez mais robustos e performáticos.
Uma vez que desenvolvemos sistemas de grande porte, essa deve ser uma preocupação constante: foco em performance.
O que Pode Afetar a Performance?
Existem alguns fatores que podem impactar diretamente a performance de um sistema. Da parte do ambiente, podemos citar:
- Banco de dados: configuração (parâmetros), memória disponível no servidor, memória dedicada ao banco, CPU’s do servidor, manutenção (estatísticas e índices atualizados).
- Configuração Paralelismo (sempre interferimos nesta configuração).
- Snapshot isolation (evita muitos locks).
- Sistema Operacional: qual a configuração do banco, do Servidor de Aplicação, do Servidor WEB e outros servidores (informações de memória, CPU’s, rede, concorrência, atualizações e KB’s)
- IIS: a configuração deve atender aos requisitos das aplicações Benner
- Framework: verificação da versão, e eventuais atualizações.
- Canal de acesso do usuário: como está a saúde da rede do usuário? Validação do Link de internet, Rede interna, etc.
Entretanto, do lado da aplicação também existem fatores que podem impactar, podemos citar:
- Definição da aplicação: pensar na forma com que os dados são pesquisados na aplicação.
- Montagem dos SQL’s: importante montar SQL’s que resolvam o problema sem afetar performance, para isso é necessário entender a estrutura da aplicação.
- Conhecimento da estrutura de dados: conhecer relacionamento de tabelas (FK’s, índices, volumetria, etc.).
- Conhecimento do funcionamento do banco: saber os conceitos básicos de um banco de dados como: Primary Key, Índices, Joins, Planos de execução, etc.
O que a Benner tem Feito para Melhorar a Performance?
Constantemente o time de suporte é treinado e instiga o cliente a ajudar a entender os problemas, além disso, as ferramentas de log são aprimoradas e novas funcionalidades desenvolvidas.
Tudo isso, gerou o Roteiro para Análise de Performance. Uma ferramenta que agrupa passos e ferramentas que a Tecnologia desenvolve/disponibiliza para ajudar a diagnosticar o ambiente e os problemas, bem como o passo a passo a ser seguido na identificação dos problemas.
Somado a isso, o Julio Cesar Rodrigues juntamente com o Matheus Silva Ribeiro, gravaram um BE.TECH falando de performance. Para assistir, clique abaixo:
E aí? Gostou deste post? Deixa seu comentário, te vejo na próxima publicação, um abraço,
Danton C. Franco Junior
#TimeTec
Conteúdo magnífico e de extrema importância!
Todo mundo deveria entender isso, e usar as boas práticas explicadas no roteiro! 🙂