the best way is to set followin command on your tasks of panel (I'm using plesk control panel, it makes me able to set task there)
php artisan queue:work --once
Note: in my shared host, I must set following values because of their server configuration:
- php: /opt/plesk/php/7.2/bin/php -q
- artisan: /var/www/vhosts/t4f.ir/httpdocs/artisan
- my command: then I should write the command
so, the result would be like this:
/opt/plesk/php/7.2/bin/php -q /var/www/vhosts/t4f.ir/httpdocs/artisan queue:work --once
there is another option for runtime which I set to Cron type with value of: * * * * * which means, every minute this code will be executed. as I used --once in end of my commad, once it execute the command and job has been finished, it will be terminated.
regarding to concurrent execution, I'm not worried about beacuase it's handling in queueing system and it's responsibility of this system.