giovani facchini [email protected] mestre em computação aplicada engenheiro de performance (dell)

19
Introdução ao Teste de Performance (Desempenho) Giovani Facchini [email protected] Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Upload: internet

Post on 18-Apr-2015

111 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Introdução ao Teste de Performance (Desempenho)

Giovani [email protected]

Mestre em Computação AplicadaEngenheiro de Performance (Dell)

Page 2: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Motivação

Por que teste de Desempenho?

Loading...

Error - Server Busy

Page 3: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Sumário

Motivação O limite da paciência de um usuário O que é Desempenho? Habilidades necessárias Conceitos de testes de Desempenho Processo (ciclos de projeto) Resultados do Teste Perguntas respondidas Ferramentas Conclusões

Page 4: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Limite da paciência

0.1 segundos – instantâneo 1 segundo – limite do fluxo de

pensamentos 10 segundos – limite antes que o usuário

comece a fazer tarefas paralelas > 10 segundos – paraleliza as tarefas

(perde a concentração)

Novos estudos (2002) apontam para 4 segundos!

[1]"Response Time in Man-Computer Conversational Transactions," R. B. Miller, from the proceedings of the AFIPS Fall Joint Computer Conference, 1968.

Page 5: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Limite da paciência

Page 6: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

O que é Desempenho?

Velocidade: a aplicação responde rápido?

Escalabilidade: quantos usuários suporta?

Estabilidade/Disponibilidade: vai falhar sobre carga? com o tempo? Downtime

Vazão: Operações por segundo

Confiança: usuários terão uma boa experiência

Page 7: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Habilidades necessárias

Teste Funcional Análise de Negócio Programação e Arquitetura Redes e Protocolos Banco de dados e dados para teste Planejamento e Gerenciamento Análise de resultados e relatórios

(estatístico/Matemático) Administração de Hardware e Sistemas Usabilidade e Segurança

Page 8: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Habilidades necessárias

Engenheiro de Desempenho é um GENERALISTA

Ele entende um pouco de tudo! Todas as camadas da aplicação são

importantes, por isso precisam ser conhecidas

Page 9: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Conceitos de testes de Desempenho

Validação SLA? Tempo de Resposta?

Teste Até onde o sistema aguenta? Qual o comportamento?

Engenharia Engloba os outros conceitos e vai além Causa raiz? Como melhorar? Onde está

o problema?

Page 10: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Tipos de testes de Performance

Carga: carga esperada (média) do dia-a-dia

Stress: alta carga (pior horário do dia)

Longa Duração: carga esperada (identificar vazamento de memória)

Pico: pico máximo de utilização

Page 11: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Atividades de Performance

Page 12: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Processo Microsoft

Page 13: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Atividades dentro do Processo

Page 14: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Resultados do Teste

Utilização da infra-estrutura Tempos de resposta Capacidade de crescimento Comparação entre

hardware/software/configuração Relatórios indicam pontos de

melhoria

Page 15: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Perguntas respondidas

Qual hardware necessário? Qual a configuração necessária? Qual sistema operacional? Qual banco? Podemos crescer? Quanto? Qual o tempo de resposta? Quais são nossos gargalos?

Page 16: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Ferramentas

Pagas HP – Loadrunner IBM – Rational Performance Tester Borland – SilkPerformer

Gratuitas JMeter OpenSTA WebLoad

Personalizadas Faça você mesmo

Page 17: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Conclusões

É necessário saber de tudo um pouco Teste de Desempenho é importante para:

Identificar utilização do sistema Verificar tempos de resposta Aperfeiçoar o ambiente/programa

Se encaixa dentro do ciclo de testes Existem ferramentas para auxiliar A experiência do usuário (cliente) está

intimamente ligada com o teste de desempenho

Page 18: Giovani Facchini facchini@gmail.com Mestre em Computação Aplicada Engenheiro de Performance (Dell)

Perguntas??