Fundamentos12 min

Latência, Throughput e Concorrência

Os três pilares fundamentais da performance. Entenda o que são, como se relacionam e por que você precisa medir os três.

Quando falamos de performance de software, três conceitos formam a base de qualquer análise séria: latência, throughput e concorrência. Entender o que cada um representa — e como eles se relacionam — é essencial para diagnosticar problemas e tomar decisões inteligentes.

Latência: O tempo de uma operação

Latência é o tempo que uma operação leva do início ao fim. Em APIs, geralmente medimos o tempo de resposta de uma requisição.

Por que latência importa

  • Experiência do usuário: Cada milissegundo adicional impacta conversão
  • Dependências encadeadas: Em microsserviços, latências se somam
  • SLAs e SLOs: Contratos de serviço são baseados em latência

Medindo latência corretamente

Não basta olhar a média. Você precisa entender a distribuição:

  • P50 (mediana): 50% das requisições são mais rápidas
  • P95: 95% das requisições são mais rápidas
  • P99: 99% das requisições são mais rápidas

A média esconde os outliers. O P99 revela a experiência dos usuários que mais sofrem.

Throughput: A capacidade do sistema

Throughput é a quantidade de trabalho que o sistema consegue processar em um período de tempo. Geralmente medido em requisições por segundo (RPS) ou transações por segundo (TPS).

Throughput vs Latência

Um erro comum é assumir que baixa latência significa alto throughput. Na verdade:

  • Um sistema pode ter baixa latência em baixa carga e colapsar quando throughput aumenta
  • Aumentar throughput geralmente aumenta latência (contenção de recursos)

Fatores que limitam throughput

  • Pool de conexões de banco de dados
  • Threads disponíveis
  • Largura de banda de rede
  • Capacidade de processamento

Concorrência: Operações simultâneas

Concorrência é o número de operações sendo executadas simultaneamente. É diferente de throughput:

  • Throughput: Quantas operações completamos por segundo
  • Concorrência: Quantas operações estão em andamento agora

A Lei de Little

A relação entre esses conceitos é expressa pela Lei de Little:

Concorrência = Throughput × Latência

Se seu throughput é 100 req/s e a latência média é 200ms:

Concorrência = 100 × 0.2 = 20 requisições simultâneas

Implicações práticas

  • Se latência aumenta, concorrência aumenta (para mesmo throughput)
  • Se concorrência atinge um limite (pool de conexões), throughput cai
  • Latência alta com alta concorrência = sistema saturado

Como os três se relacionam

Imagine um restaurante:

  • Latência: Tempo para preparar cada prato
  • Throughput: Pratos servidos por hora
  • Concorrência: Pratos sendo preparados simultaneamente

Se a cozinha tem 5 chefs (concorrência máxima = 5):

  • Cada prato leva 10 minutos (latência)
  • Throughput máximo = 30 pratos/hora

Se a latência aumenta para 15 minutos (ingrediente difícil):

  • Throughput cai para 20 pratos/hora
  • Ou precisamos de mais chefs (aumentar concorrência)

Diagnóstico de problemas

Alta latência, baixo throughput

Possíveis causas:

  • Operações bloqueantes (queries lentas, I/O síncrono)
  • Recursos insuficientes (CPU, memória)
  • Contenção de locks

Latência ok, throughput limitado

Possíveis causas:

  • Pool de conexões pequeno
  • Limite de threads
  • Gargalo em componente específico

Alta concorrência, degradação geral

Possíveis causas:

  • Sistema saturado
  • Contenção de recursos
  • Necessidade de escalar

Conclusão

Latência, throughput e concorrência são os três pilares da análise de performance. Entender como eles se relacionam permite:

  • Diagnosticar problemas corretamente
  • Prever comportamento sob carga
  • Tomar decisões de capacidade informadas

Você não pode otimizar o que não mede. E você não pode medir corretamente sem entender esses três conceitos.

latênciathroughputconcorrênciamétricas
Compartilhar:
Read in English

Quer entender os limites da sua plataforma?

Entre em contato para uma avaliação de performance.

Fale Conosco