Escopo

O que pode ser avaliado?

O objetivo é identificar e corrigir problemas de performance e escalabilidade da aplicação. A depender do diagnóstico inicial, uma ou mais destas atividades compõem o projeto.

Diagnóstico
Situação atual
Entendimento da situação atual e dos requisitos de escalabilidade e performance.
Arquitetura
Arquitetura da aplicação
Revisão e validação da arquitetura, considerando os requisitos de escalabilidade e performance.
Observabilidade
Monitoramento
Monitoramento da aplicação e do banco de dados para coleta de dados de performance, antes e depois das mudanças.
Otimização
Otimização de configurações do banco
Revisão dos parâmetros de configuração do banco de dados.
SQL
Tuning SQL
Otimização dos principais comandos SQL executados pela aplicação.
Partições
Particionamento
Análise de oportunidades de particionamento lógico e físico das tabelas.
Carga e Concorrência
Testes de performance
Execução de testes de carga nas principais funcionalidades do sistema para determinação de benchmark.
Provedores de Nuvem
Definição de ambiente cloud
Definição e configuração dos serviços e instâncias a serem utilizados, considerando escalabilidade e performance.
Caso

Allowme: de instabilidade
a 7,2x mais capacidade

De uma parada em produção a 864 mil usuários/dia suportados com estabilidade

O sistema da Allowme sofreu uma parada em produção ao atingir 120.000 requisições por dia. A NAZAR conduziu tuning SQL, substituiu o servidor de aplicação Unicorn pelo Puma e testou três configurações de arquitetura sob carga simulada de 5 a 10 novos usuários por segundo para validar qual suportaria o crescimento com estabilidade.

7,2x

Throughput

mais capacidade: de 120 mil para até 864 mil usuários/dia.

<200ms

Latência

latência em 95% das requisições, na configuração recomendada.

0

Erros

erros HTTP 500 na configuração recomendada, mesmo na carga máxima testada

O que foi realizado?

  • Criação de índice na tabela mais impactada pelas queries lentas
  • Substituição do servidor de aplicação Unicorn pelo Puma
  • Arquitetura recomendada com Elastic Load Balancer e autoscaling por uso de CPU
  • Validação de capacidade real via teste de carga, não apenas estimativa
Escopo e investimento

Como a proposta
é definida?

Investimento
Sob demanda
No aceite da proposta
50%
Ao final da consultoria
50%
Diagnóstico

Diagnóstico incial para entendimento do problema.

Estimativa

Estimativa de escopo e esforço.

Proposta

Proposta para execução do serviço.

Infraestrutura

A disponibilização da infraestrutura necessária para a consultoria é de responsabilidade do cliente.

Fora do escopo

Implementações de soluções que exijam alterações na aplicação não fazem parte desta consultoria.

Vamos começar?

Sua aplicação aguenta
o próximo pico de tráfego?

Agende um diagnóstico e valide a capacidade real do seu ambiente
antes que o próximo pico de carga descubra isso por você.