Pular para o conteúdo principal

Fila e Workers

Configurações → Avançado → Fila e Workers mostra o driver de fila atual, tipo de conexão e status dos workers para sua instalação do LeadHub.


O que a Fila Faz

A fila processa todo o trabalho em segundo plano no LeadHub:

TarefaPrioridade na Fila
Envio de e-mails (transacionais, sequências)Alta
Processamento de webhooks de entrada de fontes de leadsAlta
Chamadas a APIs de integração de saída (sincronização de CRM, Zapier, etc.)Padrão
Execução de etapas de automação (atrasos, ações)Padrão
Geração de relatórios e exportaçõesBaixa
Envio de SMS / mensagens WhatsAppPadrão

Quando um lead chega ou uma automação é acionada, a ação é enfileirada em vez de executada de forma síncrona. Isso evita que chamadas lentas de API bloqueiem a requisição web.


Drivers de Fila

DriverDescrição
Arquivo (banco de dados)Padrão. Tarefas são armazenadas na tabela jobs do banco de dados. Processadas pelo cron job. Não requer Redis ou Supervisor.
RedisFila mais rápida, em memória. Requer Redis e Supervisor (ou Horizon) no servidor. Recomendado para instalações de alto volume.
SyncExecuta tarefas imediatamente no processo. Usado apenas em ambientes de teste. Não use em produção.

Hospedagem compartilhada: A fila padrão baseada em arquivo do LeadHub funciona em qualquer plano de hospedagem compartilhada com um cron job. Você não precisa de Redis, Supervisor ou acesso SSH.


Processando a Fila (Cron Job)

A fila é processada por um único cron job que deve ser configurado no seu servidor.

Hospedagem Compartilhada cPanel

  1. Faça login no cPanel → Cron Jobs.
  2. Defina o agendamento para a cada minuto (* * * * *).
  3. Defina o comando para:
    php /home/seuusuario/public_html/cron.php >> /dev/null 2>&1
    Substitua o caminho pelo caminho absoluto para sua instalação do LeadHub.

VPS / Servidor Dedicado (Linux crontab)

* * * * * cd /var/www/leadhub && php artisan queue:work --once --max-time=55 >> /dev/null 2>&1

Ou usando um gerenciador de processos (Supervisor):

[program:leadhub-worker]
command=php /var/www/leadhub/artisan queue:work --sleep=3 --tries=3 --max-time=3600
autostart=true
autorestart=true
user=www-data

Página de Status dos Workers

A página Fila e Workers no painel de administração mostra:

InformaçãoDescrição
ConexãoNome da conexão de fila atual (de config/queue.php)
DriverO driver de fila em uso (database, redis, sync)
HorizonSe o Laravel Horizon está instalado (para monitoramento avançado baseado em Redis)

Esta página é somente leitura. Para alterar o driver de fila, atualize o QUEUE_CONNECTION no seu arquivo .env.


Tarefas com Falha

Se uma tarefa enfileirada falhar (ex.: uma API de integração retorna um erro), o LeadHub tenta novamente até 3 vezes com recuo exponencial. Após 3 falhas, a tarefa é marcada como falha.

Entregas de integração com falha são visíveis em:

  • Integrações → Log de Webhook — para falhas de webhook de saída
  • Integrações → Logs de Sincronização de Integração — para falhas de sincronização de CRM/marketing por e-mail

Verificando a Saúde da Fila

Sinais de que o worker da fila está funcionando corretamente:

  • Automações disparam em poucos minutos após um evento
  • Integrações de saída disparam logo após a chegada de um lead
  • Sequências de e-mail são enviadas no horário
  • Exportações são concluídas e ficam disponíveis para download

Sinais de que a fila NÃO está funcionando:

  • Automações nunca disparam
  • Sincronizações de integração ficam presas como "pendentes"
  • E-mails nunca são enviados

Solução: Verifique se seu cron job está configurado e em execução. Use cPanel → Cron Jobs para verificar se a entrada existe e tem o caminho correto.


Perguntas Frequentes

P: Quanto tempo leva para um novo lead sincronizar com meu CRM? A fila é executada a cada minuto por padrão. A maioria dos leads sincroniza em 60–90 segundos após chegar.

P: Posso executar vários workers para processamento mais rápido? Sim, em servidores VPS/dedicados você pode executar vários processos queue:work via Supervisor. Em hospedagem compartilhada, um único cron job é o máximo.

P: Preciso do Redis? Não. A fila baseada em arquivo (banco de dados) é adequada para produção com volumes típicos de leads (até alguns milhares por dia). Para volumes muito altos (mais de 10.000 leads/dia), o Redis é recomendado.