PHPackages                             randika-srimal/queue-manager - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Queues &amp; Workers](/categories/queues)
4. /
5. randika-srimal/queue-manager

ActiveLibrary[Queues &amp; Workers](/categories/queues)

randika-srimal/queue-manager
============================

A Laravel package to manage multiple queue workers similar to Horizon, with memory monitoring and graceful shutdown

1.0.1(2mo ago)155↓100%MITPHPPHP ^8.1|^8.2|^8.3|^8.4|^8.5

Since Jan 7Pushed 2mo agoCompare

[ Source](https://github.com/randika-srimal/laravel-queue-manager)[ Packagist](https://packagist.org/packages/randika-srimal/queue-manager)[ RSS](/packages/randika-srimal-queue-manager/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (3)Versions (3)Used By (0)

Laravel Queue Manager
=====================

[](#laravel-queue-manager)

A Laravel package to manage multiple queue workers similar to Horizon, with memory monitoring and graceful shutdown capabilities. This package allows you to run multiple queue workers with different configurations from a single command.

Features
--------

[](#features)

- 🚀 **Multiple Worker Processes** - Spawn multiple workers with different configurations
- 🧠 **Memory Monitoring** - Automatically restart workers that exceed memory limits
- 🔄 **Auto-Restart** - Workers are restarted when they crash or terminate
- 🛑 **Graceful Shutdown** - Properly handles SIGTERM, SIGINT (Ctrl+C), and SIGHUP signals
- ⚙️ **Configurable** - Easy configuration file for all worker settings
- 📊 **Process Monitoring** - Real-time display of worker status and PIDs

Requirements
------------

[](#requirements)

- PHP 8.1 or higher
- Laravel 10.x or 11.x
- PCNTL extension (for signal handling)

Installation
------------

[](#installation)

Install the package via Composer:

```
composer require randika-srimal/queue-manager
```

### For Local Development

[](#for-local-development)

If you're developing this package locally, add it to your Laravel project's `composer.json`:

```
{
    "repositories": [
        {
            "type": "path",
            "url": "./packages/queue-manager"
        }
    ],
    "require": {
        "randika-srimal/queue-manager": "@dev"
    }
}
```

Then run:

```
composer update randika-srimal/queue-manager
```

Configuration
-------------

[](#configuration)

Publish the configuration file:

```
php artisan vendor:publish --tag=queue-manager-config
```

This will create `config/queue-manager.php` in your Laravel project. Edit this file to configure your workers:

```
