Application Performance Assurance Benefícios: • Soluções sob medida para cada necessidade • Serviços pontuais ou contínuos • Alto nível de especialização • Utilização das melhores ferramentas 1 Application Performance Assurance Características: Desenvolvimento Prevenção de problemas (Quanto antes identificar mais Benefício barato e menor o impacto) Planejado Escalabilidade de aplicação e Infra-estrutura. Serviço Pontual Produção Atual Tempo Custo 2 Abordagem Tradicional Requerimentos Desenvolvimento Teste de Carga Teste Funcional Go Live? Defeitos funcionais Análise de Requisitos Desenvolvimento Identif. Corrigir Erros Funcionais Teste de Carga Tuning Preocupação com Performance 3 Problemas de Stress test Application Performance Assurance Requerimentos Desenvolvimento Teste de Carga Teste Funcional Go Live? Defeitos funcionais Alinhamento com necessidades de negócio Análise de Requisitos Problemas de transação/código, recurso s, capacidade Análise Perfil de Transações Análise de Performance End to End Preocupação com Performance 4 Problemas de stress test O Desafio da Performance Application with Performance Defects • Pratica Comum: Aguardar pela estabilidade funcional Ciclos de testes de carga para validação ou tunning • Desafios Problemas de performance são dificeis • Complexidade dos sistemas e arquiteturas • Muitas pessoas envolvidas – Arquitetos, DBAs Suporte, Rede Pouco tempo para reagir • Resultado Problemas de performance sérios – adiam implantações e benefícios Baixa credibilidade 5 Unit test Functional test Load test Production Application with Performance Defects O que é necessário • Necessidade de descobrir problemas de performance o quanto antes • Verificar sob todos os aspectos • Ganhar tempo e produtividade • Aumentar a credibilidade Unit test Profiling de transações Functional test Analise de performance Load test Production 6 Application with Performance Defects O que é necessário • Necessidade de descobrir problemas de performance o quanto antes • Verificar sob todos os aspectos • Ganhar tempo e produtividade • Aumentar a credibilidade Unit test Profiling de transações Functional test Análise de Performance Load test Production 7 Performance Assurance: Análise Perfil de Transações JSP Server EJB EJB Servlet EJB JSP Servlet Total Time JSP JDBC EJB CICS T1 EJB CICS T2 Servlet JSP Server 8 EJB EJB JMS CICS T3 Performance Assurance: Predição de Performance na rede Bandwidth Utilization Response Time Prediction Client Server Bandwidth Latency Congestion Measured Baseline TCP Effect 3.5 seconds Dublin Site – 128 kbps 7.2 seconds Dublin Site – 512 kbps 4.1 seconds WAN Provisioning Link Dublin Site Bandwidth Background Load Target Load Offered Load Recommended Bandwidth 128 kbps 25 kbps 50% 109% 512 kbps 9 Performance Assurance: Predição de Performance na rede Bandwidth Utilization Response Time Prediction Client Server Bandwidth Latency Congestion Measured Baseline TCP Effect 3.5 seconds Dublin Site – 128 kbps 7.2 seconds Dublin Site – 512 kbps 4.1 seconds WAN Provisioning Link Dublin Site Bandwidth Background Load Target Load Offered Load Recommended Bandwidth 128 kbps 25 kbps 50% 109% 512 kbps 10 Teste de Carga Monitorando a Aplicação e Infra Web Servers Application Servers JDBC-ODBC Virtual Users Method Method URL Web Service Method JSP-ASP Method Method JSP-ASP Method Method Web Service MQ Method Method Line of code JMS SQL Query 11 NA Mainframe Code JSP-ASP MQ Series Network Packets Utilização de recursos Method URL CNS Performance Method NA Teste de Carga c/ monitoração de Infraestrutura 12 Application Performance Assurance Nossos Diferenciais • Isolar problemas de performance do Código antes do teste de carga • Isolar problemas de performance de transações críticas e seu impacto na rede (What If) antes do teste de carga. • Alinhamento com requisitos de negócio. • Visibilidade end-to-end de problemas de performance • Análise de impacto da aplicação com recursos de infra-estrutura • Visão clara de necessidades de infra-estrutura • Gerenciamento de dados do teste de carga preservando confidencialidade de informações. • Solução integrada com: Identificação de problemas de performance atuais Predição de performance para identificar problemas futuros de escalabilidade. 13