Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Rabbitmq Bundle

Rabbitmq Bundle Laravel Package

emag-tech-labs/rabbitmq-bundle

Abandoned RabbitMQ integration bundle for Symfony using php-amqplib. Provides producers, consumers, CLI commands, and common messaging patterns. Project is superseded by php-amqplib/rabbitmq-bundle (^2.6); migrate to that package.

View on GitHub
Deep Wiki
Context7

RabbitMQ Bundle for the Symfony web framework

Frequently asked questions about Rabbitmq Bundle
Can I use emag-tech-labs/rabbitmq-bundle directly in Laravel, or is it only for Symfony?
This bundle is designed for Symfony, but you can use its underlying library, php-amqplib, in Laravel. You’ll need to manually configure RabbitMQ connections, service providers, and queue workers (e.g., custom `php artisan queue:work` commands). Laravel lacks native bundle support, so expect extra setup.
Why is this package deprecated? Should I still use it for Laravel?
The package is abandoned in favor of php-amqplib/rabbitmq-bundle (^2.6), which is actively maintained. For Laravel, consider migrating to the newer package or using php-amqplib standalone. This bundle risks compatibility issues with modern PHP/Symfony/Laravel versions and lacks updates.
How do I migrate from Laravel’s database queues to RabbitMQ using this bundle?
Replace Laravel’s `DispatchesJobs` trait with a custom RabbitMQ publisher (e.g., `RabbitMqPublisher`). Map your queue jobs to RabbitMQ messages, handle serialization (JSON/PHP), and implement idempotency checks. Use CLI commands like `rabbitmq:consumer` to process messages, but wrap them in Laravel’s `queue:work` for integration.
Does this bundle support Laravel’s queue workers (e.g., `php artisan queue:work`)?
No, this bundle doesn’t natively integrate with Laravel’s queue workers. You’ll need to create custom console commands (e.g., `php artisan rabbitmq:consume`) or extend Laravel’s worker to include RabbitMQ consumers. Symfony’s Messenger component handles this automatically, but Laravel requires manual setup.
What Laravel versions are compatible with emag-tech-labs/rabbitmq-bundle?
This bundle isn’t officially tested with Laravel, but its dependencies (php-amqplib) support PHP 7.4–8.1. For Laravel 8/9, use php-amqplib standalone or the newer php-amqplib/rabbitmq-bundle. Test thoroughly, as Laravel’s service container differs from Symfony’s.
How do I handle message retries or dead-letter queues in Laravel with this bundle?
This bundle lacks built-in retry logic. Implement retries via RabbitMQ’s dead-letter exchanges or custom middleware. For Laravel, extend the consumer logic to requeue failed messages or log them to a database. Symfony’s Messenger simplifies this, but Laravel requires manual handling.
Are there alternatives to RabbitMQ for Laravel that are easier to integrate?
Yes. For simpler setups, use Laravel’s built-in Redis or database queues. For higher throughput, consider Pulsar, NATS, or the actively maintained php-amqplib/rabbitmq-bundle. If you’re already using RabbitMQ, the newer bundle reduces Laravel integration friction.
How do I configure multiple RabbitMQ environments (dev/staging/prod) in Laravel?
Manually configure environment-specific connections in Laravel’s `.env` (e.g., `RABBITMQ_HOST`, `RABBITMQ_USER`). Bind these to php-amqplib’s connection factory in an `AppServiceProvider`. The Symfony bundle automates this via YAML/XML, but Laravel requires DI container setup.
Can I use this bundle for RPC (request-reply) patterns in Laravel?
Yes, but you’ll need to implement RPC manually using php-amqplib’s `call()` method. The bundle supports Thumper-like patterns, but Laravel lacks native RPC abstractions. Test thoroughly, as Symfony’s DI container simplifies dependency injection for RPC callbacks.
What’s the best way to monitor RabbitMQ consumers in Laravel if I use this bundle?
Use Supervisor or Kubernetes Jobs to manage Laravel queue workers. Log consumer metrics (e.g., messages processed, errors) via Laravel’s logging or a monitoring tool like Prometheus. The Symfony bundle integrates with Symfony’s Profiler, but Laravel requires custom instrumentation.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
directorytree/privacy-filter-classifier
directorytree/privacy-filter
datacore/hub-sdk
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
agtp/agtp-php
agtp/mod-php
splash/sonata-admin
splash/metadata
splash/openapi
splash/scopes
splash/toolkit
testo/output-teamcity
testo/bridge-symfony
spatie/flare-daemon-runtime