← Changelog
Gatewayb93253d

Runner espera por trabalho sem martelar o servidor

Essa release muda como o runner da nuvem pede trabalho. Antes ele perguntava a cada segundo se havia algo para fazer, e na prática quase sempre não havia: foram 55 mil chamadas em 60 dias, quase todas respondendo "nada". Agora ele pede uma vez e espera.

Espera ativa por trabalho. O endpoint de busca de trabalho aceita um parâmetro de espera. Quando o runner envia esse parâmetro, a requisição fica aberta até chegar uma tarefa ou o tempo de espera acabar. Se a fila está vazia, ele recebe uma resposta de "sem nada" e tenta de novo. Isso reduz drasticamente o número de chamadas e o consumo de recursos, sem mudar o comportamento para quem não usa o parâmetro: quem não envia continua recebendo a resposta imediata de sempre.

Limite de segurança. A espera máxima é de 25 segundos, para a requisição nunca estourar o tempo limite do servidor. Assim, o runner não fica pendurado além do que o servidor aguenta, e a comunicação segue confiável.

Commits (1)
  • 8590791 Runner espera por trabalho em vez de perguntar a cada segundo