sylius-labs/rabbitmq-simplebus-bundle
Sylius Labs RabbitMQ SimpleBus Bundle integrates RabbitMQ with SimpleBus to enable asynchronous message handling in Sylius and Symfony applications. It provides configuration for queues, exchanges, and consumers so commands and events can be processed reliably in the background.
Architecture fit. Despite the "Laravel/PHP package" framing, this is a Symfony bundle (SyliusLabs namespace, Bundle suffix, DI extension, SimpleBus transport wiring), not a Laravel package. It assumes a Symfony kernel/container and SimpleBus's bundle-driven command/event bus wiring. Laravel has no Bundle concept, no Symfony DI extension loading, and no SimpleBus bundle registration. Fit in a Laravel application is effectively zero without a bespoke adapter that reimplements the container wiring as a service provider and maps SimpleBus message/handler configuration by hand. Even then, the package ships nothing a Laravel provider can consume out of the box.
Integration feasibility. Feasible only as a fork-and-adapter project: register SimpleBus command/event buses in a Laravel service provider, wire the bundle's RabbitMQ transport factory, and translate config. There is no documented Laravel path, no compatibility tests for it, and the underlying ecosystem (SimpleBus 1.x/2.x, 2017-era php-amqplib, Symfony 2.x/3.x DI) is well behind current PHP 8.x and Laravel 10/11 baselines. Integration effort is net-new and unowned by upstream.
Technical risk. High.
php-amqplib contracts will not match without patching.Key questions to resolve before any code is written.
ext-sockets/TLS termination available?Stack fit. Poor for Laravel, acceptable for a Symfony/Sylius context that already uses SimpleBus. The pragmatic recommendation: do not adopt this package in a Laravel codebase. Use Laravel's native queue with a maintained RabbitMQ driver, or Symfony Messenger if the team is Symfony-oriented. Reserve this bundle for legacy Symfony/Sylius systems already standardized on SimpleBus.
Migration path. Three viable shapes, in preference order:
Compatibility. Confirm: PHP version constraints, SimpleBus major version, Symfony DI version, php-amqplib constraints, and broker requirements (TLS, vhost, auth). Expect to patch for PHP 8.x (typed signatures, deprecations) and to pin or replace transitive libraries. Validate RabbitMQ version and exchange/queue declarations against your broker conventions.
Sequencing.
Maintenance. Effectively unmaintained. Budget for fork-and-own: dependency upgrades, PHP-version patches, and security backports. Add to a vendored-dependency register with a named owner and quarterly review, or accept it as frozen and plan an exit.
Support. No vendor, no active community, no channel for upstream fixes. Escalation path is internal only. Requires a runbook covering broker topology, queue/DLQ configuration, replay procedures, and consumer restart.
Scaling. RabbitMQ scales horizontally; this bundle is a thin wiring layer, so the throughput ceiling is your consumers and SimpleBus middleware, not the package. The constraint is operational: 2017-era php-amqplib may lack modern connection-recovery, TLS, and heartbeating behavior, which becomes the real scaling and resilience limit.
Failure modes.
Ramp-up. Engineers face a dual learning curve: SimpleBus (buses, middleware, handlers) plus Symfony DI semantics — unfamiliar overhead for a Laravel team. Estimate 1–2 weeks for a senior engineer to become productive on a ported adapter, plus ongoing ownership cost that is disproportionate to the value delivered. Net recommendation: decline adoption for Laravel; pursue Option A unless a legacy Symfony/SimpleBus constraint forces Option C.
How can I help you explore Laravel packages today?