21
Avaliação de Desempenho de Sistemas de Informação MSc. Luiz Barboza [email protected] http://barbozaluiz.blogsp ot.com/

2 Ads

  • Upload
    lcbj

  • View
    370

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 2 Ads

Avaliação de Desempenho de Sistemas de Informação

MSc. Luiz Barboza

[email protected]

http://barbozaluiz.blogspot.com/

Page 2: 2 Ads

Teste de Performance

• Objetivo do Teste: • Validar o tempo de resposta do Sistema para umadeterminada transação ou função, para as seguintes condições:- Volume Normal de Carga ;- Volume de Carga Elevado ;

• Técnica: 1. Utilizar os Procedimentos de Testes implementados para o Modelo de Teste;

2. Modificar os arquivos de dados ou os scripts para aumentar o número de iterações de cada transação;

3. Os scripts deverão ser executados em uma única máquina e deverão ser repetidos com múltiplos clients;

• Critério de Completude 1. Completude com sucesso dos scripts de Teste sem nenhuma falha e dentro do tempo esperado / requerido (por transação) para um usuário único;

2. Completude com sucesso dos scripts de Teste sem falhas e dentro do tempo esperado / requerido para múltiplos usuários;

• Considerações Especiais:

1. O Teste de Performance se caracteriza por gerar uma sobrecarga no servidor. Existem vários métodos que poderão ser utilizados para obter isso, incluindo:

2. Criar uma carga de usuários virtuais para simular muitos clients conectados. Esta técnica também pode ser utilizada para sobrecarregar o tráfego da rede.

3. Utilizar clients múltiplos, cada um executando scripts de testes, para gerar uma carga no sistema.

Page 3: 2 Ads

Teste de Carga

• Objetivo do Teste: • Verificar o tempo de resposta do sistema para determinadas transações ou “business cases” em várias condições de sobrecarga (10 usuários, 20 usuários, 50 usuários simultâneos e 75 usuários simultâneos).

• Técnica: 1. Utilizar os scripts de testes desenvolvidos para o Ciclo de Teste;

2. Modificar arquivos de dados (para aumentar o número de transações ) ou testes para aumentar o número de vezes de cada transação.

• Critério de Completude: 1. Completude com sucesso dos scripts de teste sem falhas e dentro de uma alocação de tempo aceitável;

• Considerações Especiais: 1. O teste de carga deverá ser realizado em uma máquina dedicada ou num tempo dedicado. Isto irá permitir controle total e uma medição mais acurada dos recursos de CPU, memória, rede e disco.

Page 4: 2 Ads

Teste de Stress

• Objetivos do Teste: • Verificar a funcionalidade do sistema nas seguintes condições:

• Máximo número de usuários conectados (75 usuários simultâneos).

• Múltiplos usuários desempenhando as mesmas transações sobre os mesmos dados.

• Observações: O objetivo do teste de Stress pode ser também identificar e documentar as condições em que o sistema deixa de continuar funcionando adequadamente;

• Técnica: • Utilizar os scripts de teste desenvolvidos para o Teste de Performance;

• Testar o sistema com baixa disponibilidade de recursos (memória RAM, disco, rede).

• Critério de Completude: • Todos os testes planejados são executados, e os limites do sistema especificados são alcançados sem falhas no software;

• Considerações Especiais: • O stress da rede pode exigir ferramentas especiais para sobrecarregar a rede com mensagens / pacotes.

• Deve ser feita uma sincronização dos usuários virtuais concorrentes que estarão acessando os mesmos registros / banco de dados;

Page 5: 2 Ads

Throughput and response time

Page 6: 2 Ads

Performance ”knee”

Performance vs users

0.00

20.00

40.00

60.00

80.00

100.00

120.00

20 40 60 80 100 120 140 160 180

Virtual users

Re

sp

on

se

tim

e

Page 7: 2 Ads

Requisitos de Performance

Page 8: 2 Ads

Workload Model

Transação 1

Transação 2

Transação 3

Page 9: 2 Ads

Workload Model

Transação 1

Transação 2

Transação 3

Page 10: 2 Ads

Workload Model

Page 11: 2 Ads

Workload Model

Add to Cart

Login

Register

Browse

Search

62%

14%

10%7%

7%

Page 12: 2 Ads

Arquitetura de Aplicação Web

WebServer

DatabaseServer

ApplicationServerCluster

EJB Server

MQ SeriesServer

WebSphere Application Server

• Load Balancing• Firewalls• Secure Gateways

Page 13: 2 Ads

Protocolo HTTPProtocolo HTTP

Page 14: 2 Ads

Modelo Requisição-RespostaModelo Requisição-Resposta

Page 15: 2 Ads

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Arquitetura de Aplicação Web

Request

URL

Page 16: 2 Ads

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Arquitetura de Aplicação Web

Request

URL

Page 17: 2 Ads

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Arquitetura de Aplicação Web

Request

Page 18: 2 Ads

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Web App Processing with Servlet

Response

Page 19: 2 Ads

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Arquitetura de Aplicação Web

Response

Page 20: 2 Ads

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Arquitetura de Aplicação Web

Response

Page 21: 2 Ads

Teste de Performance Distribuído

Virtual Users (Rational Agent Controller)

WebServer

DatabaseServer

ApplicationServerCluster

EJB Server

MQ SeriesServer

Rational Performance Tester

Local or remotetest execution

WebSphere Application Server

• Load Balancing• Firewalls• Secure Gateways