~/beer-and-code
▪ next event Workshop: Jev na Prática para Devs · 14 Oct · 19h — duração de 2h a 3h, ao vivo via Google Meet save your seat ›
~ / events / workshop-filas-no-laravel $ _
Workshop Closed

Workshop: Filas no Laravel

Workshop pratico sobre filas no Laravel, o ultimo da temporada 2024 do BrainCode: da configuracao basica ate os detalhes finos que resolvem problema real em producao. Feito para quem ja usa Laravel mas ainda tem duvida na hora de decidir qual driver usar, como...

Event details
format workshop
when 18 Dec 2024
time 19h às 22h
status closed

Foi o ultimo workshop do ano do BrainCode, comandado por Lucas Souza (Virgao) com participacao do Danilo Sampaio, focado 100% em filas no Laravel — o tema que, segundo os proprios instrutores, mais gera duvida de configuracao na comunidade. Clima de aula pratica, com codigo sendo escrito ao vivo, bugs de demonstracao sendo debugados na hora e perguntas da plateia respondidas em tempo real, incluindo um caso real de concorrencia em sistema de triagem hospitalar.

Destaques

  • Conceitos base: diferenca entre connection (config/queue.php), fila (a pilha dentro da conexao) e driver (o mecanismo que processa — sync, database, redis, sqs).
  • Criacao de job com php artisan make:job, disparo com ExampleJob::dispatch() e execucao com php artisan queue:work (e queue:listen para hot-reload em dev).
  • Configuracao completa do driver SQS ao vivo: criacao da fila na AWS, usuario IAM com policy de acesso, chaves de acesso, variaveis de ambiente (SQS_PREFIX, SQS_SUFFIX, regiao) e instalacao do aws/aws-sdk-php.
  • Comparativo tecnico Redis vs SQS: Redis e generico (serve tambem pra cache) e exige gerenciamento manual (Horizon/Telescope); SQS e servico dedicado com monitoramento, seguranca e escalabilidade prontos, e extremamente barato (primeiro milhao de requisicoes gratis, depois centavos de dolar por milhao).
  • Modificadores de job na pratica: ShouldBeUnique (com uniqueId()), ShouldBeUnique::until processing, ShouldBeEncrypted para dados sensiveis, WithoutOverlapping, RateLimited (limiter customizado no AppServiceProvider), Skip condicional e dispatchSync para forcar execucao sincrona.
  • Encadeamento de jobs com Bus::chain([...]) para garantir ordem de execucao assincrona (ex: processar pagamento antes de notificar CRM), incluindo como interromper a cadeia com $this->fail().
  • Middleware de job (app/Jobs/Middleware) para logica reutilizavel tipo throttling, e dispatchAfterResponse como alternativa "semi-sincrona" sem fila de verdade (exige PHP-FPM/FastCGI).
  • Tratamento de falhas: $tries, $maxExceptions, release() com delay, fail() explicito, e configuracao de producao com Supervisor (autostart, autorestart, numprocs) — inclusive o cuidado de nao usar timeout quando ha jobs legitimamente longos.
  • Estrategia de filas por prioridade (--queue=high,low) seguindo a convencao do proprio Laravel.

Profundidade tecnica

A aula foi alem do "como disparar um job": entrou em armadilhas reais, como a serializacao de Eloquent models em jobs — se o registro for deletado entre o dispatch e o processamento, o find() na desserializacao quebra, e a recomendacao pratica foi passar toArray() ou tratar a exception de model not found. Tambem foi discutida a diferenca entre tries (tentativas por falha tratada ou release()) e maxExceptions (tentativas por excecao nao tratada), e o motivo de configurar autostart/autorestart no Supervisor mesmo sabendo que fatal errors derrubam o worker. A comparacao Redis vs SQS foi feita com numeros de custo reais e trade-offs de operacao, nao so teoria.

Faça parte do Clã

Se voce quer esse tipo de profundidade tecnica aplicada direto no seu dia a dia — sem enrolacao, sem hype, com metodo testado em projeto real — o Clã Beer and Code e o caminho. La voce tem acesso a encontros como esse, mentoria tecnica continua e uma comunidade que troca ideia de verdade sobre o que funciona em producao.

▪ Clã Beer and Code
Join the Clã. Build what matters.

AI Engineering has become a profession, and you learn it by building, not by watching. The Clã Beer and Code is where that happens live, every week: RAG, agents, observability and LLMOps in real projects, next to people already in production. It is paid, it is a subscription, and it is exactly the environment these sessions give you a taste of.

Join the Clã
Meet the Clã Beer and Code
playing