Pessoal,
continuando a nossa série de Otimização, famos tratar agora de problemas de Escalabilidade em aplicações Web, no caso problemas que devemos observar para Banco de Dados e Sistemas Externos. Outros grupos de problemas estaremos vendo nos artigos posteriores a este.
-Quais os principais problemas de performance que devemos observar?
Vejamos abaixo uma lista geral:
Grupo de Problemas relativos aos Application Servers (A.S.):
(visto no artigo anterior)
Grupo de Problemas relativos aos Web Serves (W.S.):
(visto no artigo anterior)
Grupo de Problemas relativos a Rede/Network:
(visto no artigo anterior)
Grupo de Problemas relativos a Sistemas Externos:
27- Problema: Todo Sistema Web (interno) funciona satisfatoriamente mas a performance global do sistema ainda não é ideal.
Indicador: Baixas performance indica baixo tempo de resposta, baixo quantidade de páginas por segundo ou baixa quantidade de transações por segundo. Os critérios de performance (metas) não foram atingidos.
Possíveis soluções:
> Verifique as conexões com sistemas externos ao sistema-alvo e suas interações. O tempo de resposta na chamada a um sistema externo pode ser um gargalo considerável. Um exemplo comum é validação de cartão de crédito, que é feita externamente.
Grupo de Problemas relativos a Banco de Dados:
28- Problema: Grande número de requisições na fila do Application Server, mas com o mesmo tempo de resposta do Application Server baixo.
Indicador: Veja indicador de requisições na fila do Application Server.
Possíveis soluções:
> Verifique se há um grande número de conexões do Application Server para oBanco de Dados. Muitas vezes é um erro de configuração de JDBC. As vezes aumentar a quantidade de conexões permitidas no JDBC já resolve o problema de performance.
29- Problema: Baixo Performance de Queries no BD.
Indicador: Veja alguma transação ou página específica está muito lenta.
Possíveis soluções:
> Verifique queries e stored procedures no BD usando os avaliadores de índices. Veja se o query Plan está correto e otimizado. Otimize as queries desejadas seja minimizando sortings inúteis, triggers desnecessários, tabelas temporárias em sentido, ou parametrizando o máximo possível stored procedures. Resumo: otimize o máximo possível.
30- Problema: Performance geral do BD lenta.
Indicador: Veja alto índice de utilização do BD para baixa quantidade de usuários, em especial quando os testes são executados.
Possíveis soluções:
> Verifique se os patches do BD relativos a otimização e performance foram aplicados. Verifique se o BD está configurado em ótimo ajuste de acordo com o fornecedor.
31- Problema: Performance geral do BD lenta, mas com grande volumes de dados sendo trocados entre o Application Server e o Database Server.
Indicador: Veja alto índice de utilização do BD para grande volume de dados movimentados.
Possíveis soluções:
> Verifique se queries e stored procedures são recompiladas a cada execução. A pré-compilação em stored procedures em geral ajuda muito.
32- Problema: Alto uso de espaço em disco no Database Server.
Indicador: Disk IO alto é um ótimo indicador para isto:
> Verifique índices, tabelas, ou outro objetos de grande são armazenados em discos separados e de forma não lógica. Verifique se todas as queries utilizam algum índice. Veja se o Database Server tem memória suficiente e como está a configuração do cache.
33- Problema: Baixa Performance em Multi-usuário no BD.
Indicador: Alto índice de tabelas e transações em "locked". Veja através dos monitores do BD:
> Verifique as transações utilizadas e executadas de modo que as mesmas sejam otimizadas ao máximo para cenários em caso de Multi-usuários. Modifique ou reveja as estratégia de "locked" das tabelas e objetos.
34- Problema: Baixa Performance de Query.
Indicador: Tabelas com alto índice de scan:
> Verifique os índices. Pode haver algum não criado ou algum novo que precise ser criado.
PS: A série de Otimização não termina aqui. Temos muitos outros tópicos a abordar!
Fontes
- MOLINARI, Leonardo. Gerência de Configuração - Técnicas e Práticas no Desenvolvimento do Software, Editora Visual Books, 2007, Florianópolis, 85-7502-210-5.
- ___________. Gerência de Projetos - Técnicas e Práticas com Ênfase em Web, Editora Érica, 2004, São Paulo, 85-7194-0050.
- ___________. BTO - Otimização da Tecnologia de Negócio, Editora Érica, 2003, São Paulo, 85-7194-9506.
- ___________. Testes de Software - Produzindo Sistemas Melhores e Mais Confiáveis, Editora Érica, 2006, 3a Edição, São Paulo, 85-7194-959X.
- STICKYMINDS. Endereço: http://www.stickyminds.com/. Acesso em julho de 2007.
Nenhum comentário:
Postar um comentário