Download the PHP package lettermint/laravel-rabbitmq without Composer

On this page you can find all versions of the php package lettermint/laravel-rabbitmq. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-rabbitmq

Laravel RabbitMQ

A RabbitMQ queue driver for Laravel with native consumers, confirmed publishing, delayed jobs, retries, and dead-letter tools. An optional Filament page lets operators inspect and replay failed jobs.

Jobs, delays, and dead letters stay in RabbitMQ. The package does not require Redis, a failed-job database, or the RabbitMQ delayed-message plugin.

Delivery is at least once. A lost connection or acknowledgement can cause a job to run again. Make job effects safe to repeat. A confirmed publish means the broker accepted the message; it does not mean the job completed.

Requirements

Component Supported versions
PHP 8.2–8.5; Laravel 13 requires PHP 8.3 or later
Laravel 11, 12, 13
RabbitMQ 4.2.x; broker tests use 4.2.5
PHP extensions sockets; pcntl and posix for native worker signals, timeouts, and heartbeats
Filament 5, only for the optional dead-letter page

Quick start

Install the package and publish its configuration:

Add this entry to connections in config/queue.php:

Set the broker connection in .env:

Use credentials for your broker. The guest values above are for local development.

Set strict_topology and topology in the published config/rabbitmq.php. This example declares one logical job queue and its dead-letter destination:

Declare the topology before you dispatch jobs, then start a consumer:

Dispatch your existing Laravel jobs:

Laravel job settings control attempts, backoff, deadlines, middleware, chains, and batches. Register each queue before using onQueue(). For multiple hosts, custom routing, prefixes, or topology attributes, see configuration and routing.

Failed jobs

RabbitMQ dead-letter queues (DLQs) retain final failed messages. Configure RABBITMQ_MANAGEMENT_URL for DLQ tools and strict audits. The broker management user needs read access to the queues and topology; the native consumer does not need the management API.

Replay confirms the replacement before acknowledging the source. An interrupted replay can leave both copies. Inspection and search are bounded; an incomplete search is reported separately from a missing message. Expired retryUntil() deadlines remain unchanged.

The dead-letter operations.

Run and monitor workers

Start with one queue per worker and prefetch 1. Use positive job timeouts and allow enough shutdown time for the active job and connection cleanup. SIGTERM stops new job admission; buffered and unsettled deliveries return to RabbitMQ when the channel closes.

Health checks test broker access. Probes with --wait require replies from the current run. For process readiness and liveness, configure a separate RABBITMQ_WORKER_STATUS_FILE for each worker and use rabbitmq:worker-status.

Use broker metrics for queue state and structured lifecycle logs for job outcomes. The package includes no metric storage or monitoring dashboard. See worker and queue operations for shutdown, retries, delayed queues, health checks, and delivery limits.

Upgrading

Before upgrading existing queues, read the upgrade guide. Queue types cannot be changed in place. Retain old delay queues until they drain, protect existing DLQs, and keep old payload classes readable while messages remain queued.

Development

See CHANGELOG.md for release history.

License

MIT


All versions of laravel-rabbitmq with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
ext-sockets Version *
illuminate/contracts Version ^11.0 | ^12.0 | ^13.0
illuminate/http Version ^11.0 | ^12.0 | ^13.0
illuminate/queue Version ^11.0 | ^12.0 | ^13.0
illuminate/support Version ^11.0 | ^12.0 | ^13.0
php-amqplib/php-amqplib Version ^3.6
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package lettermint/laravel-rabbitmq contains the following files

Loading the files please wait ...