PHPackages                             henningd/laravel-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. [Logging &amp; Monitoring](/categories/logging)
4. /
5. henningd/laravel-queue-manager

ActiveLibrary[Logging &amp; Monitoring](/categories/logging)

henningd/laravel-queue-manager
==============================

A comprehensive Laravel package for managing queues and workers with a beautiful dashboard

v1.6.0(10mo ago)09MITPHPPHP ^8.1

Since Jun 22Pushed 10mo agoCompare

[ Source](https://github.com/henningd/laravel-queue-manager)[ Packagist](https://packagist.org/packages/henningd/laravel-queue-manager)[ RSS](/packages/henningd-laravel-queue-manager/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (4)Versions (10)Used By (0)

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

[](#laravel-queue-manager)

Ein umfassendes Laravel-Package für die Verwaltung und Überwachung von Queues und Workern mit einem benutzerfreundlichen Dashboard.

Features
--------

[](#features)

- 🎛️ **Web-Dashboard** - Intuitive Benutzeroberfläche zur Verwaltung von Queues und Workern
- 👷 **Worker-Management** - Erstellen, starten, stoppen und überwachen von Queue-Workern
- 📋 **Queue-Konfiguration** - Flexible Konfiguration von Queues mit Prioritäten und Rate-Limiting
- 📊 **Real-time Monitoring** - Live-Status und Performance-Metriken
- 🔧 **Console Commands** - Umfangreiche CLI-Tools für die Verwaltung
- 🚀 **Auto-Scaling** - Automatische Worker-Skalierung basierend auf Queue-Load
- 🔒 **Security** - Konfigurierbare Middleware und Zugriffskontrollen
- 🌐 **Cross-Platform** - Unterstützung für Windows und Linux

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

[](#installation)

> ⚠️ **Wichtiger Hinweis:** Dieses Package ist noch nicht auf Packagist veröffentlicht.
>
> Für detaillierte Installationsanweisungen siehe:
>
> - [`INSTALLATION.md`](INSTALLATION.md) - Vollständige Installationsanleitung
> - [`LOCAL_INSTALLATION.md`](LOCAL_INSTALLATION.md) - Lokale Installation für Entwicklung
> - [`PUBLISHING.md`](PUBLISHING.md) - Anweisungen zur Veröffentlichung auf Packagist

### Schnelle lokale Installation

[](#schnelle-lokale-installation)

Für Entwicklung und Testing können Sie das Package direkt über Git installieren:

1. **Repository in composer.json hinzufügen:**

```
{
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/henningd/laravel-queue-manager.git"
        }
    ],
    "require": {
        "henningd/laravel-queue-manager": "dev-main"
    }
}
```

2. **Package installieren:**

```
composer install
```

3. **Package konfigurieren:**

```
php artisan queue-manager:install
```

### Nach Veröffentlichung auf Packagist

[](#nach-veröffentlichung-auf-packagist)

```
# Standard-Installation (verfügbar nach Veröffentlichung)
composer require henningd/laravel-queue-manager
php artisan queue-manager:install
```

### Manuelle Installation

[](#manuelle-installation)

Falls Sie die Installation Schritt für Schritt durchführen möchten:

```
# Konfiguration publizieren
php artisan vendor:publish --provider="HenningD\LaravelQueueManager\QueueManagerServiceProvider" --tag="config"

# Migrationen publizieren
php artisan vendor:publish --provider="HenningD\LaravelQueueManager\QueueManagerServiceProvider" --tag="migrations"

# Views publizieren (optional)
php artisan vendor:publish --provider="HenningD\LaravelQueueManager\QueueManagerServiceProvider" --tag="views"

# Migrationen ausführen
php artisan migrate

# Standard-Konfigurationen erstellen
php artisan queue-manager:seed
```

Konfiguration
-------------

[](#konfiguration)

Die Hauptkonfiguration befindet sich in `config/queue-manager.php`:

```
return [
    // Dashboard-Einstellungen
    'dashboard' => [
        'enabled' => true,
        'auto_refresh' => true,
        'refresh_interval' => 30, // Sekunden
    ],

    // Route-Konfiguration
    'route' => [
        'prefix' => 'queue-manager',
        'middleware' => ['web'],
        'name' => 'queue-manager.',
    ],

    // Worker-Einstellungen
    'workers' => [
        'default_timeout' => 60,
        'default_memory' => 128,
        'default_sleep' => 3,
        'max_workers_per_queue' => 10,
    ],

    // Queue-Einstellungen
    'queues' => [
        'auto_discovery' => true,
        'default_priority' => 1,
        'rate_limiting' => true,
    ],

    // Security-Einstellungen
    'security' => [
        'enabled' => true,
        'allowed_ips' => [],
        'require_auth' => false,
    ],
];
```

Verwendung
----------

[](#verwendung)

### Dashboard

[](#dashboard)

Nach der Installation können Sie das Dashboard unter `/queue-manager` aufrufen:

```
http://your-app.com/queue-manager

```

### Console Commands

[](#console-commands)

#### Worker-Management

[](#worker-management)

```
# Worker erstellen
php artisan queue-manager:worker:create "My Worker" --queue=default --timeout=60 --start

# Worker auflisten
php artisan queue-manager:worker:list

# Worker nach Queue filtern
php artisan queue-manager:worker:list --queue=emails

# Worker nach Status filtern
php artisan queue-manager:worker:list --status=running
```

#### Queue-Management

[](#queue-management)

```
# Standard-Konfigurationen erstellen
php artisan queue-manager:seed

# Package installieren
php artisan queue-manager:install
```

### Programmatische Verwendung

[](#programmatische-verwendung)

#### Worker erstellen und verwalten

[](#worker-erstellen-und-verwalten)

```
use HenningD\LaravelQueueManager\Models\QueueWorker;

// Worker erstellen
$worker = QueueWorker::create([
    'name' => 'Email Worker',
    'queue' => 'emails',
    'timeout' => 60,
    'memory' => 128,
    'auto_start' => true,
]);

// Worker starten
$worker->start();

// Worker stoppen
$worker->stop();

// Worker neustarten
$worker->restart();

// Worker-Status prüfen
if ($worker->isRunning()) {
    echo "Worker läuft";
}
```

#### Queue-Konfiguration

[](#queue-konfiguration)

```
use HenningD\LaravelQueueManager\Models\QueueConfiguration;

// Queue-Konfiguration erstellen
$queue = QueueConfiguration::create([
    'name' => 'high-priority',
    'description' => 'Hochpriorisierte Jobs',
    'connection' => 'redis',
    'priority' => 10,
    'max_jobs_per_minute' => 120,
    'max_workers' => 5,
    'auto_scale' => true,
]);

// Queue aktivieren/deaktivieren
$queue->activate();
$queue->deactivate();
```

### API-Endpunkte

[](#api-endpunkte)

Das Package stellt verschiedene API-Endpunkte zur Verfügung:

```
# Status abrufen
GET /queue-manager/status

# Worker verwalten
GET /queue-manager/workers
POST /queue-manager/workers
PUT /queue-manager/workers/{id}
DELETE /queue-manager/workers/{id}
POST /queue-manager/workers/{id}/start
POST /queue-manager/workers/{id}/stop
POST /queue-manager/workers/{id}/restart

# Queues verwalten
GET /queue-manager/queues
POST /queue-manager/queues
PUT /queue-manager/queues/{id}
DELETE /queue-manager/queues/{id}
```

Erweiterte Features
-------------------

[](#erweiterte-features)

### Auto-Scaling

[](#auto-scaling)

Aktivieren Sie Auto-Scaling für automatische Worker-Skalierung:

```
$queue = QueueConfiguration::create([
    'name' => 'auto-scaled-queue',
    'auto_scale' => true,
    'min_workers' => 1,
    'max_workers' => 10,
    'scale_up_threshold' => 10, // Jobs in Queue
    'scale_down_threshold' => 2,
]);
```

### Rate Limiting

[](#rate-limiting)

Konfigurieren Sie Rate-Limiting für Queues:

```
$queue = QueueConfiguration::create([
    'name' => 'rate-limited-queue',
    'max_jobs_per_minute' => 60,
    'rate_limiting_enabled' => true,
]);
```

### Custom Middleware

[](#custom-middleware)

Fügen Sie eigene Middleware für das Dashboard hinzu:

```
// config/queue-manager.php
'route' => [
    'middleware' => ['web', 'auth', 'admin'],
],
```

### Security

[](#security)

Beschränken Sie den Zugriff auf bestimmte IP-Adressen:

```
// config/queue-manager.php
'security' => [
    'enabled' => true,
    'allowed_ips' => ['127.0.0.1', '192.168.1.0/24'],
    'require_auth' => true,
],
```

Systemanforderungen
-------------------

[](#systemanforderungen)

- PHP 8.1 oder höher
- Laravel 10.0, 11.0 oder 12.0
- Unterstützte Queue-Treiber: database, redis, sync
- Für Worker-Management: proc\_open() und proc\_get\_status() Funktionen

Troubleshooting
---------------

[](#troubleshooting)

### Worker starten nicht

[](#worker-starten-nicht)

1. Überprüfen Sie die PHP-Konfiguration:

```
php -m | grep proc
```

2. Stellen Sie sicher, dass `proc_open` und `proc_get_status` verfügbar sind
3. Überprüfen Sie die Berechtigungen für das Laravel-Verzeichnis

### Dashboard nicht erreichbar

[](#dashboard-nicht-erreichbar)

1. Überprüfen Sie die Route-Konfiguration in `config/queue-manager.php`
2. Stellen Sie sicher, dass die Middleware korrekt konfiguriert ist
3. Leeren Sie den Route-Cache: `php artisan route:clear`

### Migrationen schlagen fehl

[](#migrationen-schlagen-fehl)

1. Überprüfen Sie die Datenbankverbindung
2. Stellen Sie sicher, dass die Migrations-Tabelle existiert
3. Führen Sie die Migrationen manuell aus: `php artisan migrate`

Contributing
------------

[](#contributing)

Beiträge sind willkommen! Bitte erstellen Sie einen Pull Request oder öffnen Sie ein Issue auf GitHub.

License
-------

[](#license)

Dieses Package ist unter der MIT-Lizenz lizenziert. Siehe [LICENSE](LICENSE) für Details.

Support
-------

[](#support)

- GitHub Issues:
- Dokumentation:

Changelog
---------

[](#changelog)

### v1.0.0

[](#v100)

- Initiale Veröffentlichung
- Worker-Management
- Queue-Konfiguration
- Web-Dashboard
- Console Commands
- Auto-Scaling
- Rate Limiting

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance54

Moderate activity, may be stable

Popularity4

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

9

Last Release

322d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7b48036cf345f984baed5158b353526e4223851fe2a0ce63f3b113bbfd2d8527?d=identicon)[henningd1](/maintainers/henningd1)

---

Tags

laravelmonitoringqueuedashboardmanagementworker

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/henningd-laravel-queue-manager/health.svg)

```
[![Health](https://phpackages.com/badges/henningd-laravel-queue-manager/health.svg)](https://phpackages.com/packages/henningd-laravel-queue-manager)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
