2 Ads

Post on 06-Jun-2015

371 views 0 download

Transcript of 2 Ads

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

MSc. Luiz Barboza

luiz.barboza@gmail.com

http://barbozaluiz.blogspot.com/

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.

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.

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;

Throughput and response time

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

Requisitos de Performance

Workload Model

Transação 1

Transação 2

Transação 3

Workload Model

Transação 1

Transação 2

Transação 3

Workload Model

Workload Model

Add to Cart

Login

Register

Browse

Search

62%

14%

10%7%

7%

Arquitetura de Aplicação Web

WebServer

DatabaseServer

ApplicationServerCluster

EJB Server

MQ SeriesServer

WebSphere Application Server

• Load Balancing• Firewalls• Secure Gateways

Protocolo HTTPProtocolo HTTP

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

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Arquitetura de Aplicação Web

Request

URL

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Arquitetura de Aplicação Web

Request

URL

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Arquitetura de Aplicação Web

Request

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Web App Processing with Servlet

Response

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Arquitetura de Aplicação Web

Response

Web Server Machine

Client

WebServer

App(e.g.

Apache)

Web Container

App(e.g.

Tomcat)

Servlet

Arquitetura de Aplicação Web

Response

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