Guia aprofundado
Simulador de fila e limite de requisições de API: quanto custa o limite de um terceiro quando o tráfego atinge o pico
Análise executiva do setor
Muitos produtos se apoiam na API de outra empresa: envio de e-mails, mapas, pagamentos, enriquecimento de dados, modelos de linguagem. O provedor se protege com um limite de requisições, um teto de requisições por segundo. Em um dia médio, o limite passa despercebido. O problema é que os clientes não chegam na média. Eles chegam em um lançamento, na correria da manhã ou em uma importação em massa, e nesses minutos a sua demanda pode ser várias vezes a média. Os trabalhos que não podem ser enviados esperam na sua fila, e uma fila que espera demais vira uma falha.
A estrutura do problema é uma fila diante de uma taxa de atendimento fixa. Quando a taxa de chegada está bem abaixo do limite, a espera é quase zero. À medida que a utilização se aproxima de cem por cento, a espera cresce muito depressa e, quando a demanda supera o limite, o acúmulo cresce sem fim até que os tempos esgotados o cortem. Por isso a relação não é linear: poucos pontos percentuais a mais de tráfego perto do limite podem transformar uma fila inofensiva em uma enxurrada de falhas. O tempo limite que você permite decide quanto dessa espera você consegue absorver.
O modelo de efeito dominó segue isso em cinco etapas. O volume de trabalhos e a razão de pico definem a carga de pico em relação ao limite. A carga de pico define a espera na fila. A espera em relação ao tempo limite define a parcela de trabalhos que falham. Os trabalhos que falham carregam um custo em receita perdida, créditos de serviço, novas tentativas e chamados. O que sobra depois do processamento, do plano e dos custos fixos é o lucro. Um pequeno aumento na razão de pico pode levar a primeira caixa ao vermelho, e o custo das falhas aparece na quarta caixa muito antes de alguém notar uma queda no total mensal.
O iceberg separa o que o plano custa do que as falhas custam. Acima da linha d'água estão o processamento e o próprio plano da API. Abaixo estão a receita dos trabalhos que nunca foram concluídos, os créditos devidos por acordos de nível de serviço, o processamento queimado em novas tentativas que falham outra vez e os chamados de suporte que os clientes abrem quando algo não chega. Juntos, eles muitas vezes superam o preço do plano superior que os teria evitado. Use o simulador para encontrar a carga em que as falhas começam a pesar mais do que o custo de fazer o upgrade.
Fórmulas e metodologia
O modelo trabalha por mês. A taxa de chegada na hora de pico é o número de trabalhos dividido pelos segundos de um mês, multiplicado pela razão de pico. A fila é tratada como um único servidor, com o limite de requisições como taxa de atendimento. A utilização é a taxa de chegada dividida pelo limite. A parcela dos trabalhos de pico que esperam mais do que o tempo limite é estimada a partir da cauda da fila e, quando a demanda supera o limite, soma-se a parcela de sobrecarga. Cerca de um terço dos trabalhos chega em janelas de pico, e uma pequena base de erros se aplica o tempo todo.
- Taxa de chegada no pico
- λ = trabalhos ÷ 2.592.000 × razão de pico
- Requisições por segundo em uma janela de pico, a partir do volume mensal.
- Utilização
- ρ = λ ÷ limite
- Parcela do limite de requisições usada no pico. Acima de 100%, a fila cresce sem limite.
- Parcela de falhas no pico
- sobrecarga + (1 − sobrecarga) × ρ × e^(−limite × (1 − ρ) × tempo limite)
- Trabalhos descartados por sobrecarga mais aqueles que esperam mais do que o tempo limite.
- Trabalhos que falham
- F = trabalhos × (35% × falha no pico + 0,4%)
- Falhas nas janelas de pico mais uma pequena base de erros o tempo todo.
- Lucro líquido
- Líquido = (trabalhos − F) × valor − processamento − plano − novas tentativas − créditos − chamados − fixos
- O resultado mensal. O ponto de ruptura é aquele em que ele chega a zero.
Elasticidade em cascata
O limite de requisições e a razão de pico são as variáveis mais elásticas, porque a parcela de falhas depende de quão perto a utilização está de cem por cento. Perto desse limiar, uma pequena mudança tem grande efeito, enquanto longe dele a mudança quase não importa. A receita por trabalho e o volume de trabalhos escalam toda a linha de receita. O tempo limite importa mais quando a carga está logo abaixo do limite, onde a paciência converte uma fila longa em trabalho concluído.
Três estudos de caso reais
Início com recursos próprios
Um produto jovem bem abaixo do seu limite
Um produto envia um milhão e meio de trabalhos por mês em um plano pequeno, com picos moderados e um tempo limite generoso. Cada trabalho rende bem e a fila raramente se forma. Carregue o caso para ver como um limite baixo é perfeitamente adequado enquanto o volume é pequeno e quão pouco custam as falhas.
Médio porte em expansão
Alto volume em um plano grande
Uma plataforma envia vinte e oito milhões de trabalhos por mês em um plano com limite de requisições alto. Os picos são controlados e a utilização permanece moderada, de modo que as falhas são raras e o plano é uma pequena parcela da receita. Carregue o caso para ver por que pagar por folga é barato quando o volume é grande.
Crise de cisne negro
Uma campanha atinge um limite pequeno
Uma campanha de marketing gera dezoito milhões de trabalhos, com picos nove vezes maiores do que a média, em um limite de dez requisições por segundo e um tempo limite de cinco segundos. A utilização passa de cem por cento e a maioria dos trabalhos de pico falha. Carregue o caso para ver os trabalhos que falham, os créditos e as novas tentativas arrasarem o mês.
Matriz de referências do setor
| Métrica | Zona de perigo | Média do setor | Elite dos 10% melhores |
|---|---|---|---|
| Utilização de pico do limite de requisições | Acima de 95% | 60–80% | Abaixo de 60% |
| Razão pico/média de requisições | Acima de 7 | 2–4 | Abaixo de 2 |
| Trabalhos que falham ou esgotam o tempo | Acima de 4% | 0,5–1,5% | Abaixo de 0,5% |
| Espera na fila em relação ao tempo limite | Acima de 60% | 10–30% | Abaixo de 10% |
| Plano da API como parcela da receita | Acima de 15% | 3–8% | Abaixo de 3% |
Variáveis e alavancas
Trabalhos por mês
Número de trabalhos que o seu produto envia à API de terceiros a cada mês, com uma requisição por trabalho.
Alavanca: Aumente o volume só depois de o limite e a fila conseguirem sustentar a hora de pico, porque trabalhos extras elevam o pico que você não consegue atender.
Razão pico/média
Quantas vezes a taxa de requisições da hora de pico é maior do que a média mensal. Lançamentos, campanhas e importações em lote a elevam.
Alavanca: Achate os picos com lotes agendados, prioridades e distribuindo as importações ao longo do dia, já que a hora de pico define as falhas.
Limite de requisições
Requisições por segundo que o plano da API permite enviar. As que passam desse valor esperam na sua fila.
Alavanca: Compare o preço da próxima faixa de plano com as falhas que ela elimina; perto da carga total, um pequeno aumento de limite evita uma grande parcela dos tempos esgotados.
Tempo limite da fila
Quanto tempo um trabalho pode esperar na fila antes de o usuário ou o sistema desistir e o trabalho falhar.
Alavanca: Dê um tempo limite maior ao trabalho não urgente e reserve os curtos para trabalhos interativos, porque a paciência é capacidade gratuita.
Receita por trabalho
Receita média de um trabalho concluído, como tarifas de uso ou a parcela de uma assinatura que ele representa.
Alavanca: Aumente os preços ou crie uma faixa prioritária para que os trabalhos que mais precisam do limite também paguem por ele.
Como usar este simulador
- 1Informe os trabalhos mensais e estime a razão pico/média a partir dos registros de requisições.
- 2Defina o limite de requisições do seu plano atual e o tempo limite que o seu produto permite.
- 3Acrescente a receita por trabalho concluído.
- 4Pressione Encontrar meu ponto de ruptura para ver quanto tráfego ou quão baixo um limite leva o lucro a zero.
- 5Compare o plano atual com um upgrade e picos mais suaves ao longo de 24 meses.
Erros a evitar
- Planejar com o tráfego médio. O limite é atingido nos minutos de maior movimento, então dimensione o plano pelos picos, não pela média mensal.
- Fazer novas tentativas sem recuo progressivo. Elas somam carga à própria fila que está falhando e podem transformar uma hora lenta em uma indisponibilidade.
- Tratar um trabalho que falhou apenas como uma venda perdida. Os créditos, os chamados de suporte e o processamento desperdiçado podem custar mais do que o trabalho rendeu.
- Ignorar o crescimento. Um plano adequado ao volume de hoje pode chegar a noventa e cinco por cento de utilização depois de um único trimestre bom.
Perguntas frequentes
Por que a fila fica tão ruim perto do limite?
Porque pequenas rajadas aleatórias deixam de poder ser escoadas antes que as próximas cheguem. O tempo de espera cresce de forma acentuada à medida que a utilização se aproxima de cem por cento.
Um tempo limite maior é sempre melhor?
Não para trabalhos interativos, em que os usuários não esperam. Para trabalho em segundo plano, é capacidade gratuita, porque a paciência absorve a rajada.
Devo simplesmente comprar o maior plano?
Raramente. Compare o custo da próxima faixa com as falhas que ela elimina e considere antes suavizar os picos, o que muitas vezes é mais barato.
Por que uma parcela dos trabalhos é contada como pico?
O tráfego real é irregular. O modelo supõe que cerca de um terço dos trabalhos chega em janelas de pico, um número geral prudente que você pode adaptar alterando a razão de pico.
Como encontro o ponto de ruptura?
Pressione Encontrar meu ponto de ruptura. A ferramenta leva cada variável para o pior extremo e informa o valor em que o lucro mensal chega a zero.
Qual é a precisão deste simulador?
É um modelo educativo de filas com premissas simples, não uma orientação de engenharia ou financeira. Meça seus registros reais de requisições e confira os limites e preços atuais do seu provedor.
Este é um modelo educacional de planejamento, com premissas declaradas. Não constitui aconselhamento financeiro, tributário ou jurídico. Substitua os dados pelos seus próprios números e confirme decisões importantes com um profissional qualificado.