SYS://VISION.ACTIVE
VIEWPORT.01
LAT 28.0222° N
SIGNAL.NOMINAL
VISION Loading
Back to Blog

Queue Worker Management in Production

Shane Barron

Shane Barron

Laravel Developer & AI Integration Specialist

Queue Workers Need Supervision

Queue workers are long-running processes that can fail, run out of memory, or become stuck. Proper supervision ensures reliability.

Supervisor Configuration

# /etc/supervisor/conf.d/laravel-worker.conf
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/app/artisan queue:work redis --sleep=3 --tries=3 --max-time=3600
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true
user=www-data
numprocs=8
redirect_stderr=true
stdout_logfile=/var/www/app/storage/logs/worker.log
stopwaitsecs=3600

Managing Supervisor

# Reload configuration
sudo supervisorctl reread
sudo supervisorctl update

# Manage workers
sudo supervisorctl start laravel-worker:*
sudo supervisorctl stop laravel-worker:*
sudo supervisorctl restart laravel-worker:*
sudo supervisorctl status

Horizon for Redis Queues

// config/horizon.php
'environments' => [
    'production' => [
        'supervisor-1' => [
            'connection' => 'redis',
            'queue' => ['high', 'default', 'low'],
            'balance' => 'auto',
            'minProcesses' => 3,
            'maxProcesses' => 10,
        ],
    ],
],

# Supervisor for Horizon
[program:horizon]
process_name=%(program_name)s
command=php /var/www/app/artisan horizon
autostart=true
autorestart=true
user=www-data
redirect_stderr=true
stdout_logfile=/var/www/app/storage/logs/horizon.log
stopwaitsecs=3600

Deployment Considerations

# After deployment, restart workers to pick up new code
php artisan queue:restart

# Horizon provides graceful termination
php artisan horizon:terminate

Monitoring Queue Health

  • Queue depth (jobs waiting)
  • Processing time
  • Failed job count
  • Worker memory usage

Conclusion

Queue workers need process supervision, proper configuration, and monitoring. Use Supervisor for basic setups, Horizon for advanced Redis queue management.

Share this article
Shane Barron

Shane Barron

Strategic Technology Architect with 40 years of experience building production systems. Specializing in Laravel, AI integration, and enterprise architecture.

Need Help With Your Project?

I respond to all inquiries within 24 hours. Let's discuss how I can help build your production-ready system.

Get In Touch