How to Restart Queues in Laravel 8/7/6/5

Laravel queues are long-lived processes that are often started as a daemon using a process manager such as Supervisor. Because of this, code changes implemented while the queue is running may not be picked up, even when new jobs are added.

 

To make code changes to the queue refresh or "clear the cache" use one of these approaches:

 

Restarting the Queue VIA Artisan

If you want to restart the queue immediately and have the queue start using the updated code, cd to the root of your application and type the following:

 

php artisan queue:restart
Broadcasting queue restart signal.

 

Restart Queue VIA Supervisor

If you are using Supervisor you can restart your queue worker like this, replacing laravel-worker with the name of yours:

 

sudo supervisorctl restart laravel-worker:*
laravel-queue:laravel-queue_00: stopped
laravel-queue:laravel-queue_00: started

 

Conclusion

It may be safer to restart your queue with Supervisor if that is where your queues are being run from.