LARAVEL JOBS 📨 Como disparar JOB para a fila no LARAVEL

Поделиться
HTML-код
  • Опубликовано: 25 янв 2025

Комментарии • 21

  • @fabricioguimaraes3915
    @fabricioguimaraes3915 3 года назад +3

    Conhecendo seu canal hoje. Obrigado pelo conteúdo!

  • @victorfigueiredo6031
    @victorfigueiredo6031 7 месяцев назад

    Que aula top mano, didática mt boa!

  • @VitorSilva-xr9eh
    @VitorSilva-xr9eh 7 месяцев назад

    O meu codigo o schedule nao funciona somente o queue

  • @Jovem-Padawan
    @Jovem-Padawan 2 года назад

    Oi, eu tenho no meu sistema, uma requisição a um webservice.
    Separei essa requisição em um service.php;
    No controller da aplicação eu chamo esse serviço, pois o mesmo aparece em outras rotas, pra não ficar repetindo código;
    Na blade, eu mando exibir, e demora um pouco, a pagina fica carregando, mas não é só isso, na mesma pagina tenho mais conteúdo de banco de dados também.
    Como eu posso fazer uma fila para essa requisição, e ao mesmo tempo mostrar a pagina para o usuário com os dados do banco, e somente depois dos dados do webservice aparecer?

  • @thiagopetherson1268
    @thiagopetherson1268 Год назад +1

    Olá, Rafael.
    Acredito que por você estar usando o Sail, não foi preciso instalar o predis ou phpredis. Pois no caso o phpredis já vem por padrão no container. Certo ?
    Uma outra dúvida. Quando usamos "database", ao invés de redis, conseguimos ver os processos (antes de executarmos a fila) na tabela "jobs" e os que falharam na tabela "failed_jobs". Agora, quando usamos "redis", onde conseguimos ver esses jobs e esses jobs que falharam ?

    • @PinguimDoLaravel
      @PinguimDoLaravel  Год назад +1

      isso.. o container do sail já vem com as dependências necessárias.
      você consegue ver o que tem no redis através do Horizon ..

    • @thiagopetherson1268
      @thiagopetherson1268 Год назад

      @@PinguimDoLaravel Show. E em prod, tem alguma sugestão ?

  • @websistematizando5544
    @websistematizando5544 4 месяца назад

    No meu caso, o projeto está em um servidor remoto compartilhado, mas eu tenho acesso ao terminal, nesse caso dou o comando php artisan queue:word normalmente para iniciar, ou tem outra forma que geralmente fazem?

    • @oh-dony
      @oh-dony 2 месяца назад

      Crontab

  • @Cebolinha1999
    @Cebolinha1999 2 года назад

    Amigo, você usa Laravel Horizon em produção? Recomenda?

  • @MarcioFornari
    @MarcioFornari Год назад

    Fala Rafael, posso disparar um job dentro de outro job? A ideia é ter um job a cada 30 minutos.. esse job a cada 30 minutos vai fazer um foreach em uma tabela e a cada registro disparar um job para evitar problemas de um falhar e não executar os outros, ta certo isso?

    • @PinguimDoLaravel
      @PinguimDoLaravel  Год назад +1

      certíssimo.. é o aconselhado. nunca deixa um job com o foreach torando toda a lógica. usa o foreach pra criar novos jobs e deixa a fila executar os jobs criados pelo foreach.. senão você perde todo o pq da fila.

  • @Abelardooliver
    @Abelardooliver Год назад

    No sistema, tenho 5 base de dados diferente, cada base tem cerca de 30 usuários, e cada usuário faz o login na sua base (para logar, eles passam user,pass e base(nome da empresa) .
    1-Como colocar uma fila para rodar recebendo jobs das 5 bases ?
    2-Quando executar , como falar para fila qual base ele precisa pegar os dados? tendo em vista que nao vai servir a base do .env e sim a base do usuário que logou e disparou o job

    • @PinguimDoLaravel
      @PinguimDoLaravel  Год назад

      Cara, tu tem que passar a informação de qual base para o job de alguma maneira. Não sei como você vê essa configuração no banco, se você tem um Tenant ID algo assim, mas você precisa passar pro job e no job você seta o banco de dados que vai usar pra aquele sequencia de transações.

  • @PedroSilva-hz5gv
    @PedroSilva-hz5gv Год назад

    Gostaria de fazer uma função automática que alteraria o dado de uma tabela de cobrança, caso o data de vencimento na tabela seja menor que a data atual, alterar status para pagamento atrasado. Qual seria a maneira de fazer isso

    • @PinguimDoLaravel
      @PinguimDoLaravel  Год назад

      um comando que roda todo dia via schedule:work varrendo a tabela de cobrança aplicando essa lógica

    • @fabioselau4576
      @fabioselau4576 Год назад

      @@PinguimDoLaravel como funciona o schedule:work quando se tem load balancing da aws? por exemplo, tem 3 máquinas ec2.
      Nesse caso acho melhor criar um lambda que aciona por agendamento que faz as queries e updates q ele precisa

    • @PinguimDoLaravel
      @PinguimDoLaravel  Год назад

      @@fabioselau4576 deixa uma das máquinas responsável pelo schedule: work . não precisa das 3 rodando o schedule senão vai triplicar a chamada

  • @rafauell
    @rafauell 2 года назад

    Como deixo o work rodando ou sendo acionado automaticamente sem a necessidade de acionar via comando?
    Ex: crio uma api onde vou receber 10mil requisição com dados em json. Pego essas requisição e salvo os dados no banco. Após isso preciso que o sistema processe cada registro, pegue esses dados do banco faça algumas função com eles.. como deixo isso autômatico ?

    • @PinguimDoLaravel
      @PinguimDoLaravel  2 года назад +2

      Você vai precisar configurar o seu servidor para deixar um serviço da queue:work rodando sempre.
      Na documentação do Laravel tem os detalhes de como você faz isso: laravel.com/docs/9.x/queues#supervisor-configuration
      Agora para o seu processo:
      1. Para cada requisição recebida precisa disparar um job para a fila para ser executado assim que possível ( até para salvar no banco de dados )
      2. Você pode deixar todo esse teu processamento dentro do job que você vai disparar logo que você receber o request