Laravel Queue

php artisan queue:table

crea la migration per creare la tabella jobs.

Creare il job worker:

php artisan make:job ProcessTPlinkSendSms

crea il job dentro app/Jobs/ProcessTPlinkSendSms.php

e lo fai partire con:

php artisan queue:work

Per non dover far partire il worker a mano e tenerlo aperto si può installare supervisor:

sudo apt-get install supervisor

e creiamo la configurazione:

cd /etc/supervisor/conf.d

laravel-queue-emails.conf

e ci incolliamo:

[program:yacatechEmailsQueue]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/html/sites/yacatech/artisan queue:work --queue=emails database --sleep=3 --tries=3 --max-time=3600
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true
user=root
numprocs=1
redirect_stderr=true
stdout_logfile=/var/www/html/sites/yacatech/storage/logs/emails-worker.log
stopwaitsecs=30

E far partire i processi con:

sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start all
sudo supervirorctl status