Filas no Laravel em 2026: Horizon, Redis e tracing distribuído
Tutoriais

Filas no Laravel em 2026: Horizon, Redis e tracing distribuído

27 May, 2026 Lucas Cardoso 3 visualizações

O Problema

Sistemas de filas tradicionais assumiam tempos de execução previsíveis. Os jobs integrados com LLM de hoje exibem variância extrema de latência — chamadas podem variar de 4 a 40 segundos para inputs idênticos. Misturá-los com operações sensíveis ao tempo causa estrangulamentos e degradação do serviço.

Arquitectura: Filas Separadas por SLA

A solução recomendada usa filas distintas com configurações personalizadas:

  • Fila alta prioridade (<5s): webhooks críticos, OTP, facturação
  • Fila default (<60s): emails transaccionais, notificações
  • Fila AI (<5min): chamadas LLM, embeddings, reranking
  • Fila bulk (horas): reindexação, exportações em larga escala

Cada fila executa sob supervisores Horizon dedicados com timeouts e configurações de retry adequados.

Retry Inteligente com Backoff Exponencial

Arrays de backoff exponencial previnem problemas de rate limit de API: [10, 30, 120, 300, 600] segundos entre tentativas aumenta progressivamente o tempo de espera.

Idempotência

Idempotência verdadeira requer:

  1. Geração de UUID na construção do job
  2. Validação de cache local antes de chamadas à API
  3. Propagação do header HTTP para APIs externas
  4. Persistência do resultado antes de completar o job

Tracing Distribuído com OpenTelemetry

Integração com o pacote Laravel OpenTelemetry da Keepsuit fornece visibilidade end-to-end. Spans manuais capturam operações caras (chamadas LLM), com atributos críticos rastreados para análise.

Prevenção de Falhas Silenciosas

Respostas LLM vazias ou malformadas frequentemente completam sem erro. A solução requer lógica de validação explícita que lança excepções, despoletando retentativas quando as respostas falham na validação de schema.

Comentários

Utilizamos cookies 🍪

Usamos cookies para melhorar a sua experiência no portal. Ao continuar, aceita a nossa política de privacidade.