Latência: quando segundos importam

Diagrama: latência — tempo entre requisição e resposta em sistemas distribuídos

Você já abriu uma tela que levou dois segundos pra carregar? Dois segundos em experiência digital são uma eternidade. Você é BA e escreve: "Ao abrir a tela do pedido, exibir todas as informações relacionadas." De onde vêm essas informações? Quantos sistemas respondem? Quanto tempo cada um leva? Aqui entra latência — consequência da arquitetura, não detalhe técnico.

É o tempo entre o pedido e a resposta. Esse intervalo pode incluir rede, processamento, consulta ao banco, integração com outro sistema. Cada etapa soma milissegundos. Tela que mostra dados do pedido, do cliente, histórico de pagamento, status de entrega, limite de crédito, score de risco: se cada informação vem de um serviço, a tela pode depender de seis. Se cada um responde em 200 ms, já deu 1,2 segundo no cenário ideal. "Adicionar também o score antifraude na tela." Essa informação pode exigir chamada externa, cálculo pesado — e de repente você somou 300 ms. Nenhuma decisão isolada parece causar estrago; a soma pesa. Aí alguém pergunta "Por que a tela está lenta?" e ninguém lembra que cada requisito acrescentou um pouquinho.

Em monolito a latência pode ser mais previsível. Em sistema distribuído cada comunicação é rede: tempo variável, falha, timeout. Dashboard que junta vendas, cancelamentos, receita, ticket médio: esses dados podem vir de warehouse, ERP externo, banco replicado. Se cada um responde em tempo diferente, a tela pode demorar ou mostrar inconsistência temporária. Latência técnica não é igual à percebida. Dá pra mostrar a estrutura da tela na hora, carregar o crítico primeiro, deixar o secundário pra depois. Essas decisões são de produto. Antes de exigir várias informações ao mesmo tempo: tudo isso precisa aparecer junto? O que é crítico? O que pode carregar depois? Exigir que tudo esteja sincronizado antes de exibir significa que a tela só aparece quando todos os serviços responderem. Se um falhar, a tela pode travar.

Checkout: "Antes de finalizar, validar estoque, limite de crédito, score antifraude, cupom e frete." Se todas essas validações forem síncronas e bloqueantes, o clique em "Finalizar" pode levar vários segundos — e cada segundo reduz conversão. Alguma validação pode ser antes? Pré-processada? Assíncrona? Mais chamadas ao mesmo tempo significa mais CPU, mais rede, mais infra. Performance não é só experiência; é custo operacional. Latência raramente nasce de uma decisão grande; nasce da soma de decisões pequenas. "Só mais uma informação.", "Só mais uma validação." — quando você percebe, a experiência está pesada.

Quem pensa no sistema não pensa só no que mostrar; pensa em como mostrar.

No próximo post: acoplamento. Porque quanto mais um sistema depende do outro, mais caro fica mudar.

Foto do Guilherme

Guilherme Lasinskas

Senior Business Analyst · Nubank · Top Voice

Transformo dados em decisões, com trade-offs claros, menos dívida técnica e fundações que escalam. Engenharia de Computação pela UNIFEI, pós em Gestão Financeira pela FGV.