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

Laravel 12: What’s New From 12.0 to 12.19 – A Complete Guide

Jul 20, 2025

🔧 1. Laravel 12.0 – Starter Kits & Core Changes Version 12.0 introduced modern starter kits for React, Vue, Livewire, plus integratio...

Laravel Queue & Job System: From Table Creation to Production Deployment

Jul 01, 2025

🚀 Laravel Queue & Job System We’re gonna walk you through Laravel queues from setup to deploying in production using Supervisor. Step 1...

Explore the Most Powerful Modern Laravel Tools: Inertia.js, View Creators, and HLS — Step by Step

Jul 27, 2025

Here’s a complete breakdown of essential tools to level up your Laravel development: Inertia.js v2, View Creators, and the Laravel HLS package...

Laravel 12.21.0 – A Smart Update for Cleaner Queries and Stricter Validation

Aug 03, 2025

Laravel 12.21.0 introduces two game-changing features aimed at writing cleaner, more maintainable code. The update includes the new whereValueBetwe...

Color Everything in CSS – Simple Guide

Jun 26, 2025

Color Everything in CSS – Simple Guide Today we’re diving into CSS colors: how to define them, especially with modern methods like lab(...

Laravel 12.16.0 - New Features for Developers

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...