Central de Conhecimento Técnico
Perguntas frequentes sobre
teste de performance
Mais de 35 respostas técnicas organizadas por área temática — da lentidão imediata à decisão de contratar, do segmento ao timing certo de agir. Por Carlos Eduardo Vazquez.
Dor imediata
Lentidão, quedas e capacidade de sistemas
01Por que meu sistema fica lento quando muitos usuários acessam ao mesmo tempo?
Quando muitos usuários acessam uma aplicação simultaneamente, diferentes camadas podem atingir seus limites: servidor web, threads do servidor de aplicação, pool de conexões, banco de dados, filas, APIs externas ou recursos de nuvem. A causa não é necessariamente falta de servidores. Uma query lenta, um lock no banco, um limite de threads ou uma integração síncrona pode degradar todo o sistema mesmo quando CPU e memória parecem disponíveis.
02Por que meu site ou app cai justamente no dia de maior movimento?
Picos de acesso revelam comportamentos que não aparecem em testes leves. A aplicação pode suportar o tráfego médio, mas falhar quando a concorrência aumenta rapidamente, quando milhares de transações disputam o mesmo recurso ou quando uma dependência externa ultrapassa seu limite. Testar antes de uma rematrícula, Black Friday ou lançamento reduz o risco de descobrir o limite em produção.
03Quantos usuários simultâneos meu sistema realmente aguenta?
Não existe um número universal. A capacidade depende da jornada de negócio, do perfil dos usuários, do volume de dados, dos critérios de tempo de resposta, das integrações e da configuração do ambiente. A forma confiável de responder é estabelecer uma baseline de capacidade: uma medição controlada que indique quantos usuários virtuais o sistema suporta mantendo os indicadores definidos.
04Por que aumentar os servidores na Azure ou AWS não resolveu a lentidão?
Escalar a infraestrutura resolve apenas gargalos relacionados ao recurso que foi ampliado. Se o problema está em uma consulta SQL, em contenção de banco, em threads do Tomcat, em serialização de chamadas ou em uma API externa, adicionar CPU ou memória pode aumentar o custo sem remover a causa. O caminho mais seguro é medir antes e depois com telemetria correlacionada.
05Minha conta de nuvem só cresce e o sistema continua lento: o que estou fazendo errado?
O erro mais comum é tratar qualquer lentidão como problema de infraestrutura. Aumentar máquinas, clusters ou bancos sem uma baseline pode mascarar gargalos lógicos e criar despesa recorrente. Comece identificando a jornada crítica, o nível de concorrência esperado e os indicadores que caracterizam uma resposta aceitável.
06Por que meu sistema funciona bem em testes internos, mas trava em produção?
Testes internos frequentemente usam poucos usuários, massas de dados pequenas, jornadas simplificadas e menos integrações. Produção acrescenta concorrência real, dados maiores, chamadas externas, tarefas agendadas e perfis diferentes de acesso. Quanto maior a diferença de topologia, dados e configuração entre ambientes, menor a capacidade de extrapolar resultados.
07Meu sistema caiu de novo. Como evito que isso se repita?
É necessário transformar o incidente em uma hipótese testável. Registre a jornada afetada, o horário, a concorrência, os erros, os recursos utilizados e as mudanças recentes. Depois, reproduza o padrão em um ambiente controlado e confirme se o gargalo está no código, no banco, na infraestrutura ou em uma dependência. Um plano eficaz combina baseline, testes de carga e estresse, correção priorizada e reteste.
08Código gerado por IA, como Copilot ou Cursor, pode deixar meu sistema mais lento sem eu perceber?
Sim. Ferramentas de inteligência artificial podem acelerar a criação de código, mas o código gerado ainda precisa ser revisado, medido e testado. Uma implementação aparentemente correta pode introduzir consultas repetidas, chamadas sequenciais, alocação excessiva de memória, loops ineficientes ou uso inadequado de conexões. Testes funcionais não garantem desempenho sob concorrência.
Educacional e técnico
Conceitos, ferramentas e metodologia
01O que é teste de carga e por que é diferente de um teste funcional?
O teste de carga avalia como uma aplicação se comporta com um volume definido de usuários, transações ou requisições simultâneas. Ele mede tempo de resposta, taxa de erro, throughput e consumo de recursos para verificar se o sistema atende aos critérios de capacidade. O teste funcional verifica se uma regra de negócio funciona. Uma operação pode funcionar corretamente com um usuário e falhar quando centenas de pessoas executam a mesma jornada ao mesmo tempo.
02Teste de carga, teste de estresse e teste de resistência: qual é a diferença?
Teste de carga valida o comportamento no volume esperado. Teste de estresse força o sistema acima do limite esperado para revelar o ponto de ruptura. Teste de resistência (soak) mantém carga por período prolongado para detectar memory leak, exaustão de conexões e degradação gradual. O desenho ideal depende do risco de negócio.
03O que é um teste de pico, ou spike test, e quando ele é necessário?
O spike test simula uma mudança brusca de carga em curto intervalo. Ele representa situações como abertura de inscrições, início de uma campanha ou disparo de uma comunicação que concentra acessos. Esse teste verifica se o sistema absorve o aumento, enfileira solicitações, rejeita excesso de forma controlada e retorna ao estado normal depois do pico.
04k6, JMeter ou Gatling: qual ferramenta faz sentido para o meu caso?
k6 usa scripts em JavaScript e tem boa integração com pipelines — faz sentido quando a equipe quer versionar testes e executá-los no CI/CD. JMeter tem interface visual, ampla adoção e suporte a vários protocolos — útil para acelerar a modelagem inicial. Gatling é orientado a código e eficiente — indicado quando a organização prefere testes como código integrados ao desenvolvimento. A ferramenta não substitui a metodologia.
05O que é uma baseline de capacidade e por que toda aplicação crítica precisa de uma?
Uma baseline de capacidade é uma referência medida em condições conhecidas. Ela registra o volume de concorrência que o sistema suporta, os tempos de resposta, a taxa de erro e o consumo de recursos sob uma determinada configuração. Sem baseline, decisões de infraestrutura e lançamento são baseadas em percepção. Com baseline, a equipe consegue comparar versões, dimensionar a nuvem e identificar regressões.
06Locks e deadlocks no SQL Server: o que são e como identificá-los antes de travar o sistema?
Um lock é um mecanismo de controle de concorrência que impede operações incompatíveis de acessar o mesmo recurso ao mesmo tempo. Um deadlock ocorre quando duas ou mais transações ficam esperando recursos umas das outras, formando um ciclo. Sob carga, locks prolongados aumentam a fila de transações e elevam o tempo de resposta. Para investigar, correlacione a jornada lenta com consultas, duração das transações, bloqueios e plano de execução.
07Por que as threads do Tomcat se esgotam sob carga?
O Tomcat usa threads para processar requisições. Elas podem ficar ocupadas por tempo excessivo quando a aplicação aguarda o banco, uma API externa, disco, filas ou operações síncronas demoradas. Com muitas requisições concorrentes, o pool pode atingir o limite e novas chamadas passam a esperar ou falhar. A correção não é apenas aumentar o número de threads.
08O que é memory leak em aplicações Java e como ele aparece nos testes?
Um memory leak ocorre quando objetos que não deveriam mais ser usados continuam referenciados e não podem ser liberados pelo coletor de lixo. Em aplicações Java, o efeito pode ser crescimento contínuo do heap, pausas maiores de garbage collection, queda de throughput e, em casos extremos, OutOfMemoryError. No teste de resistência, o sinal típico é degradação progressiva durante uma carga estável.
09Como correlacionar tempo de resposta com CPU, I/O e memória para achar a causa-raiz?
Comece alinhando os relógios e os intervalos de coleta. Depois, compare a curva de latência com CPU, memória, I/O de disco, rede, threads, conexões e métricas do banco durante a mesma jornada. CPU alta pode indicar processamento intenso, mas CPU baixa com latência alta pode apontar espera por I/O, locks ou dependência externa.
10O que é graceful degradation e por que meu sistema deveria ter isso?
Graceful degradation, ou degradação controlada, é a capacidade de preservar funções essenciais quando a demanda ou uma dependência excede o limite normal. Em vez de derrubar toda a aplicação, o sistema pode limitar operações não essenciais, usar filas, exibir mensagens claras ou responder com capacidade reduzida. Um teste de estresse ou spike deve verificar se os limites, timeouts e filas funcionam como projetado.
11Um diagnóstico automático, como Lighthouse ou PageSpeed, é suficiente para saber se o sistema aguenta produção?
Não. Lighthouse e PageSpeed são úteis para avaliar aspectos de uma página em uma execução sintética, como carregamento e experiência percebida. Eles não certificam a capacidade transacional de uma aplicação com milhares de usuários concorrentes. Para saber se o sistema suporta produção, é necessário testar jornadas críticas, APIs, autenticação, banco de dados, integrações e concorrência representativa.
Decisão e comparação
Contratação de testes e comparação de abordagens
01Quanto custa um teste de carga profissional no Brasil?
O preço depende do número de jornadas, endpoints, usuários virtuais, integrações, ambiente e profundidade do diagnóstico. No modelo de pacotes da FATTO, as referências são: Essential (uma jornada e até 15 endpoints) por R$ 18.000 em 5 dias úteis; Standard (até três jornadas e 35 endpoints) por R$ 35.000 em 10 dias; Advanced (web, mobile e APIs até 60 endpoints) por R$ 62.000 em 15 dias; e Custom/Enterprise a partir de R$ 85.000.
02Ferramenta automática de teste versus consultoria especializada: qual escolher?
A ferramenta automática é adequada para triagem, validação inicial ou execução recorrente de scripts já conhecidos. A consultoria especializada faz sentido quando há risco de negócio, incidente recorrente, lançamento próximo, integração complexa ou necessidade de um laudo técnico acionável. As duas abordagens podem coexistir: a consultoria estrutura o diagnóstico e a equipe usa os scripts depois.
03O que perguntar antes de contratar uma empresa de teste de performance?
Pergunte quais jornadas serão testadas, qual volume de usuários virtuais será simulado, que tipo de massa de dados será usada e quais critérios definirão aprovação ou falha. Confirme se a empresa mede apenas endpoints ou também correlaciona aplicação, banco e infraestrutura. Verifique quais acessos são necessários, como o ambiente será protegido, se existe autorização formal e quais entregáveis serão fornecidos.
04Vale a pena fazer um assessment de performance antes de um lançamento grande?
Sim, especialmente quando o lançamento tem data fixa, grande exposição pública ou impacto direto em receita. O assessment antecipa o ponto de ruptura e oferece tempo para corrigir, repetir o teste e ajustar a capacidade antes da janela crítica. Começar entre 60 e 90 dias antes é uma prática prudente para eventos sazonais.
05Teste de carga em homologação ou em produção: qual ambiente é o certo?
Homologação é geralmente a opção mais segura quando reproduz a arquitetura, configuração, dados e integrações relevantes. Produção pode ser necessária quando não existe um ambiente equivalente, mas exige janela aprovada, autorização formal, limites de carga, monitoramento, plano de interrupção e comunicação com as áreas responsáveis.
06Quanto tempo leva um teste de carga, estresse e resistência completo?
O prazo inclui discovery, setup, acessos, criação ou adaptação de scripts, preparação da massa, execução, análise e emissão do laudo. No modelo FATTO: Essential tem prazo de cinco dias úteis, Standard de dez e Advanced de quinze. Escopos Custom são definidos sob consulta. A execução pode ser atrasada se o cliente não liberar ambiente, credenciais, dados ou telemetria.
07Por que um relatório cheio de gráficos genéricos não resolve o problema sozinho?
Gráficos mostram o que aconteceu, mas nem sempre explicam por que aconteceu ou qual correção deve ser priorizada. Um relatório útil conecta a transação afetada ao componente limitante — uma query, lock, pool, thread, chamada externa ou configuração de infraestrutura. A qualidade do laudo depende da instrumentação e do contexto.
Por segmento
Educação, e-commerce, pagamentos, saúde e M&A
01Como preparar o sistema acadêmico para o pico de rematrícula sem cair?
Mapeie a jornada completa de rematrícula, incluindo login, consulta de dados, seleção, confirmação e geração de cobrança. Estime a concorrência por minuto, modele uma massa de dados representativa e valide o ambiente com carga, estresse e, se necessário, teste de pico. A baseline deve registrar quantos alunos conseguem concluir a jornada com tempo de resposta previsível.
02Como saber se minha loja virtual aguenta a Black Friday?
Teste as jornadas que concentram receita: acesso, busca, página de produto, carrinho, checkout e pagamento. Use carga para validar o volume esperado e estresse ou spike para verificar o comportamento quando a demanda cresce rapidamente. Avalie também filas, timeouts, retentativas e mecanismos de degradação controlada. O objetivo é identificar o limite antes da Black Friday.
03Como garantir que o sistema de pagamentos via PIX não trave em horário de pico?
Modele a jornada completa, desde autenticação e criação do pedido até a geração, consulta e confirmação do PIX. O teste deve diferenciar o tempo da aplicação do tempo das instituições e APIs externas. Observe pool de conexões, locks, filas, idempotência, timeouts e retentativas. Uma falha em um provedor não deve necessariamente bloquear todo o checkout.
04Como evitar quedas na plataforma de telemedicina nos horários de maior demanda?
Comece pelas jornadas que afetam o atendimento: login, agenda, confirmação, entrada na consulta, troca de mensagens e acesso a dados autorizados. Considere concorrência de pacientes e profissionais, picos no início dos turnos e dependências como vídeo e autenticação. O teste precisa preservar privacidade e segurança com dados sintéticos ou anonimizados.
05Como saber se os sistemas de duas empresas suportarão a fusão de bases após uma aquisição?
O processo deve combinar análise de arquitetura, volume de dados, integrações e padrões de concorrência dos dois ambientes. Crie uma baseline do ambiente atual e projete cenários de crescimento. Teste migração, sincronização, consultas críticas e jornadas de negócio em um ambiente controlado. O laudo deve registrar capacidade, gargalos e riscos residuais para apoiar a decisão do conselho.
Gatilhos de timing
Lançamentos, IA e picos de acesso
01Faltam 60 dias para o lançamento: como saber se o sistema vai aguentar?
Use os 60 dias para trabalhar de trás para frente. Defina a data do lançamento, reserve tempo para diagnóstico, correções, reteste e contingência. O primeiro passo é selecionar as jornadas críticas e estimar o maior volume de usuários simultâneos. Execute carga e estresse em um ambiente autorizado, correlacione latência com infraestrutura e banco e priorize as correções por impacto.
02Contratamos DBA e SRE, mas a lentidão continua: o que estamos deixando passar?
A contratação de especialistas não substitui uma hipótese baseada em evidências. O gargalo pode estar na interação entre aplicação, banco, infraestrutura e dependências externas, e não em uma única camada. Verifique se a equipe tem uma baseline, se os testes reproduzem a jornada real e se os relógios e métricas estão correlacionados.
03Lançamos um assistente com IA generativa e o sistema ficou instável. Por quê?
Um assistente de IA generativa pode acrescentar chamadas externas, processamento variável, consumo de tokens, recuperação de contexto e novas sessões concorrentes. Esses componentes aumentam a latência e podem consumir conexões, threads, memória e limites de taxa do provedor. Teste diferentes tamanhos de prompt, concorrência, duração de sessão e avalie filas, timeouts e circuit breakers.
04Um concorrente caiu em um pico de acesso. Como evitar que aconteça comigo?
A queda de um concorrente é um alerta de risco, não uma prova de que seu sistema terá o mesmo comportamento. Faça um inventário das jornadas que concentram receita, estime o pico mais provável e teste o ambiente antes da data crítica. Combine teste de carga, spike e estresse. O resultado deve ser uma baseline documentada, um plano de correção e uma data para reteste.
05Como testar a performance de chatbots e agentes de IA generativa sob carga real?
O teste deve representar concorrência, tamanho e variabilidade dos prompts, tempo de resposta do modelo, chamadas de recuperação de contexto, integrações externas, consumo de tokens, limites de taxa e comportamento de fallback. Como agentes de IA generativa têm dependências variáveis e podem envolver APIs de terceiros, esse escopo exige planejamento específico e autorização dos provedores.
Sua dúvida não está aqui?
Fale com um especialista da FATTO e receba uma avaliação técnica do seu caso em até 24 horas.