Latencia vs throughput: qual priorizar na otimizacao
Latencia mede o atraso de uma requisicao; throughput mede o volume processado. A escolha depende do seu objetivo: experiencia do usuario ou capacidade de carga.
Latencia mede o atraso de uma requisicao; throughput mede o volume processado. A escolha depende do seu objetivo: experiencia do usuario ou capacidade de carga.
Você está diante de um sistema lento. O time de infra diz que o throughput está alto, mas os usuários reclamam de demora. O problema: latência e throughput medem coisas diferentes, e otimizar uma pode prejudicar a outra. A pergunta certa não é "qual é melhor", mas "qual responde à decisão que preciso tomar agora".
Latência é o atraso entre uma requisição e sua resposta, medida em milissegundos. Throughput é o volume de dados processado por segundo, medido em requests por segundo ou Mbps. Um sistema pode ter throughput excelente e latência péssima, ou o contrário. A escolha depende do que seu negócio valoriza mais.
Impacto na experiência do usuário
Para aplicações interativas, a latência domina. Um site de e-commerce com 500ms de resposta frustra o usuário, mesmo que o servidor processe 10 mil requisições por segundo. O tempo de resposta percebido é a latência, não o throughput. Se sua decisão envolve interface, priorize latência.
Capacidade de processamento
Para sistemas batch, como processamento de relatórios ou ingestão de dados, o throughput importa mais. Um pipeline que processa 1 milhão de eventos por hora entrega valor mesmo com latência de segundos. Aqui, otimizar throughput reduz custo por unidade processada, uma decisão financeira clara.
Trade-off entre as métricas
Otimizar throughput frequentemente aumenta latência. Fila maior, buffer maior, processamento em lote: tudo eleva o atraso individual. Já reduzir latência pode diminuir o throughput, pois o sistema gasta mais recursos respondendo rápido a cada requisição. É um jogo de compensação, não de vitória dupla.
Facilidade de mensuração
Throughput é mais fácil de medir: basta contar requisições por segundo. Latência exige percentis, como p95 ou p99, porque a média esconde picos. Um sistema com latência média de 200ms pode ter p95 de 2 segundos, inaceitável para uma API. Meça os dois, mas interprete a latência pelos percentis.
Tabela comparativa
| Critério | Latência | Throughput | |---|---|---| | Foco | Tempo de resposta | Volume processado | | Unidade | ms | req/s ou Mbps | | Melhor para | Interfaces, APIs | Batch, pipelines | | Risco | Picos no p99 | Saturação de fila | | Otimização | Reduzir atraso | Aumentar capacidade |
Veredito
Para quem busca experiência do usuário em aplicações interativas, escolha latência. Para quem precisa processar grande volume de dados com custo controlado, escolha throughput. Na maioria dos sistemas, você precisa das duas, mas a prioridade muda conforme o cenário.
Perguntas frequentes
Latência e throughput são inversamente proporcionais?
Em geral, sim, há um trade-off. Aumentar throughput costuma elevar a latência, pois o sistema processa em lote ou enfileira mais requisições. Reduzir latência pode diminuir o throughput, já que o sistema responde individualmente. Mas não é uma regra fixa: otimizações de código podem melhorar ambos.
Como medir latência corretamente?
Use percentis, não médias. O p95 e o p99 mostram o comportamento nos piores cenários, que são os que o usuário sente. Uma média de 200ms pode esconder picos de 2 segundos. Monitore também o p50 para ter uma visão do caso típico.
Qual métrica usar para APIs?
Latência. APIs são interativas por natureza, e o usuário espera resposta rápida. Uma API com latência alta, mesmo com throughput alto, gera timeout e abandono. Priorize percentis de latência e depois verifique se o throughput atende à demanda.
Throughput alto significa sistema rápido?
Não necessariamente. Um sistema pode processar 1 milhão de requisições por segundo e ainda ter latência de 5 segundos por requisição. Throughput alto indica capacidade, não velocidade. Para experiência do usuário, a métrica relevante é a latência.
Como melhorar as duas métricas ao mesmo tempo?
Otimize o código e a infraestrutura antes de mexer em configurações. Reduzir processamento desnecessário, usar cache e melhorar o algoritmo ajuda nas duas frentes. Depois, ajuste buffers e filas, mas monitore o impacto em ambas as métricas para evitar surpresas.
Patrícia Lemos
Especialista em dados e analytics
Transforma painel cheio de número em decisão. Cuida de mensuração, dashboard e a métrica que de fato move o negócio.
Ver todos os artigos →