Pular para conteúdo

Projeto 14 - Processamento Assíncrono com Filas ⚡

Objetivo: Mover uma tarefa demorada (envio de notificação) para uma fila, evitando travar a resposta da API.

O Desafio

  1. Configure o driver de fila (QUEUE_CONNECTION=database ou redis) e rode as migrations de filas.
  2. Crie um Job EnviarNotificacaoTransacao que simula o envio de um e-mail, usando sleep(3) para representar latência.
  3. Dispare o Job ao criar uma nova transação, com EnviarNotificacaoTransacao::dispatch($transacao).
  4. Rode o worker (php artisan queue:work) e confirme que a API responde imediatamente, enquanto o Job processa em segundo plano.

O que entregar?

  • Código do Job e do ponto de disparo (dispatch).
  • Print do terminal com o worker processando o Job.
  • Comparação (print ou tabela) do tempo de resposta da API com e sem o uso da fila.