symfony-bundles/queue-bundle
Symfony Queue Bundle integrates queue-based messaging into Symfony applications. It offers configuration and services for dispatching jobs, running worker consumers, and connecting supported queue backends with Symfony's service container and console commands, enabling background and asynchronous pr...
Reality check first: this is a Symfony bundle (last release 2017, ~31 stars), not a Laravel package. There is no service provider, facade, or config/queue.php integration. If you are on Laravel, the honest day-one move is to use illuminate/queue with Redis/SQS and treat this bundle only as a reference for interface design. If you are working in a legacy Symfony 2/3 app (the only place where it fits), proceed as below.
Minimal steps in Symfony:
composer require symfony-bundles/queue-bundle
app/AppKernel.php (or bundles.php on Symfony 4, though the package predates that convention) under new SymfonyBundles\QueueBundle\QueueBundle().DependencyInjection/Configuration.php before writing any config. That file is the authoritative documentation for the driver tree and available options — the README is thin and the 2017-era docs assume a specific Symfony version.composer.json for the PHP and Symfony constraints. You will likely need --ignore-platform-reqs on modern PHP; expect the bundle to be untestable on PHP 8 without patches.ext-amqp for AMQP drivers, ext-redis, etc. Most "class not found" errors at boot are missing extensions, not missing config.First use case: define one queue in config, inject the producer service into a controller, push a message, then run the bundle's consumer command in a second terminal and watch the message round-trip. Get that working before wiring anything into real domain code.
JobDispatcher class of your own so swapping the bundle out later is a one-file change.serialize() across versions — this bundle was written when that was common and it will bite you.config_test.yml so functional tests don't need a broker.composer.lock.--max-jobs-style flags may not exist; do it via supervisor).bin/console cache:clear (or debug:container) to surface the real exception.services.yml. That lets you keep the bundle's wiring while swapping the transport.rabbitmqctl list_queues, redis-cli KEYS) before touching application code — the bundle often swallows transport errors into a generic exception.How can I help you explore Laravel packages today?