Laravel Queue & Job System: From Table Creation to Production Deployment
July 1, 2025🚀 Laravel Queue & Job System
We’re gonna walk you through Laravel queues from setup to deploying in production using Supervisor.
Step 1: Create queue tables
Run these commands:
php artisan queue:table
php artisan queue:failed-table
php artisan queue:batches-table
php artisan migrate
Step 2: Monitor failed jobs
Run:
php artisan queue:failed
You’ll get a list with ID, connection, exception, and timestamp.
Step 3: Retry failed jobs
php artisan queue:retry 5 # retry single job
php artisan queue:retry all # retry all failed jobs
Step 4: Delete failed jobs
php artisan queue:flush
Step 5: Prune old failed jobs
php artisan queue:prune-failed # older than 24h
php artisan queue:prune --hours=48 # older than 48h
Step 6: Retry logic with backoff
Examples:
php artisan queue:work --tries=2
php artisan queue:work --queue=notification --tries=2 --backoff=1200
php artisan queue:work --queue=notification --tries=2 --backoff=10,20
Step 7: Job batches
Use batches to group jobs (e.g., sending 10,000 emails) and track overall progress, retries, and notifications.
Step 8: Production deployment with Supervisor
Supervisor restarts your queue workers on failure. Example config:
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/html/artisan queue:work --tries=3 --backoff=30 --timeout=120 --max-jobs=1000 --max-time=3600 --sleep=3 --reset=1
autostart=true
autorestart=true
user=www-data
numprocs=2
redirect_stderr=true
stdout_logfile=/var/log/supervisor/laravel-worker.log
Save to /etc/supervisor/conf.d/laravel-worker.conf, then:
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start laravel-worker:*
Blog
Jul 28, 2025
🚀 What’s New in React Native 0.80? The React Native 0.80 release marks a pivotal moment in mobile development. This update not only enhances...
Jul 06, 2025
Using Web Components the Smart Way A lot of developers assume Web Components are meant to replace full SPA frameworks like React or Vue. But in rea...
Jun 03, 2025
Laravel 12.16.0 - New Features for Developers 1. New Validation Rule: in_array_keys You can now validate that an array contains at least one of the...
Aug 09, 2025
Object-Oriented Programming (OOP) is a modern software development approach that divides an application into units called Objects that interact with...
Feb 05, 2026
Understanding Redux Toolkit 2.9.0 Update The Redux Toolkit 2.9.0 release focuses primarily on optimizing RTK Query performance, streamlining asyn...
Jun 17, 2025
React Labs: View Transitions & Activity Published April 23, 2025 by Ricky Hanlon. React Labs is sharing two new experimental featu...