Estimativa de uma regressão no desempenho
Como avaliar uma queda no desempenho: o trabalho consiste principalmente no diagnóstico, e não na correção. Como avaliar a gravidade quando a causa é desconhecida e um SLO está em jogo.
A p95 dobrou na semana passada e a sala está votando na questão errada.
Na maioria das vezes, as quedas de desempenho exigem muito trabalho de diagnóstico, mas pouca correção. A equipe que já identificou a consulta N+1 sabe que a correção é simples. A equipe que ainda não a identificou está votando em uma tarefa cujo conteúdo real é “passar três dias analisando gráficos de chamas”. São tarefas diferentes.
Duas perguntas determinam a estimativa. Primeiro: a causa é conhecida? Se sim, avalie o escopo da correção. Se não, avalie o escopo da investigação. Segundo: qual é o SLO que a regressão violou e qual é o prazo para restaurá-lo? Uma regressão que viola um SLO voltado para o cliente tem um perfil de urgência diferente de uma lentidão de 10% que ninguém percebeu.
O que se fala na sala
SRE: “O p95 passou de 200 ms para 450 ms na última quarta-feira.”
Backend: “Houve algo de notável nas implantações daquele dia?”
Líder: “Três implantações. Nenhuma delas afetou o endpoint lento.”
Backend: “Ou não parecia que tivessem acessado o endpoint lento.”
SRE: “Estamos dentro do SLO? Temos tempo para investigar adequadamente?”
Perguntas que vale a pena fazer antes de votar
- A causa já é conhecida, ou estamos avaliando a necessidade de uma investigação?
- O que é o SLO, e ele está sendo violado no momento?
- O que mudou entre a última janela favorável e a primeira janela desfavorável?
- Temos gráficos de chamas, traços ou apenas painéis de controle?
- A reversão é uma medida de mitigação viável enquanto investigamos?
Se a causa ainda for uma suposição, trata-se de um spike com limite de tempo, e não de uma correção — e, caso um SLO seja violado, a reversão dá tempo para executá-lo sem a pressão do tempo.
Defina o tamanho com base no que você realmente tem, não no que gostaria de ter. Se a causa for desconhecida, isso significa que você está definindo o escopo da pesquisa.
Assim como estimar um bug sem reprodução, o trabalho está no diagnóstico. Veja os outros exemplos de estimativas bem-sucedidas, ou inicie uma sessão gratuita de Planning Poker quando a causa for identificada.