Weave 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
Job Queue Bundle

Job Queue Bundle Laravel Package

jms/job-queue-bundle

A Symfony bundle that adds a persistent, Doctrine-backed job queue to your application. It supports job scheduling, dependencies, retries, parallel workers, and a web interface for monitoring and managing queued jobs.

View on GitHub
Deep Wiki
Context7

Allows to run and schedule Symfony console commands as background jobs.

Frequently asked questions about Job Queue Bundle
Can I use jms/job-queue-bundle in a Laravel application?
No. jms/job-queue-bundle is a Symfony bundle that registers through Symfony's HttpKernel Bundle class and boots via DI compiler passes; Laravel has no equivalent bundle mechanism, service provider, facade, or Artisan integration. Making it work in Laravel would require reimplementing its container and persistence layers rather than installing it. If your target is Laravel, treat this package as design reference only and use Laravel's native queue, bus, and scheduler features.
Is jms/job-queue-bundle still maintained and safe for production?
It is effectively unmaintained: the last release was 2019-09-09, which predates Symfony 5 GA, PHP 8.0, and Doctrine ORM 3. An unmaintained package that dispatches console commands and runs long-lived workers is an unattended attack surface, and there is no upstream maintainer to patch issues. For new production work, especially in Laravel, it should be rejected on maintenance and security grounds.
What PHP and Symfony versions does jms/job-queue-bundle support?
The bundle targets the Symfony 2/3 and Doctrine ORM 2 era; its 2019 release predates Symfony 5, PHP 8, and Doctrine ORM 3. You should expect Composer constraint conflicts against any modern Laravel or Symfony dependency graph. Verify with composer why-not jms/job-queue-bundle before assuming compatibility, and be prepared for a fork if you must run it.
How do I install jms/job-queue-bundle, and why does Composer fail in Laravel?
Installation assumes a Symfony app: composer require jms/job-queue-bundle followed by registering the bundle in AppKernel or bundles.php and configuring Doctrine. In a Laravel project there is no bundle registration step, and the package's Symfony and Doctrine constraints will usually block installation or force --ignore-platform-reqs hacks. Those hacks create unpatchable dependency debt, so do not treat a forced install as a working integration.
How does jms/job-queue-bundle persist jobs compared to Laravel's queue tables?
It stores each job as a Doctrine ORM entity with status, output history, and scheduling metadata. Laravel persists queue work in database tables through its database queue driver and Eloquent models, which fits Laravel's default stack without mixing Doctrine's Unit of Work into the process. Running both ORMs in one application is possible but adds complexity and is not a supported integration path here.
How do I run and scale workers in jms/job-queue-bundle versus Laravel queue:work?
The bundle ships a long-running jms-job-queue:run console command with concurrency and runtime limits, typically supervised outside the web request cycle. Laravel's equivalent is php artisan queue:work managed by Supervisor or Horizon, with native concurrency, retries, and monitoring. Mixing the two means operating a separate worker lifecycle, logging stack, and container semantics alongside Laravel's queue system.
Does jms/job-queue-bundle support job dependencies and chained jobs like Bus::chain or Bus::batch?
Yes, dependency ordering between jobs is one of the bundle's differentiators: job B can wait on job A before executing. Laravel covers the same need with Bus::chain for sequential work and Bus::batch for grouped jobs with completion callbacks and failure handling. That overlap is the main reason a Laravel team would not need this bundle even if it were maintained.
How does scheduling recurring jobs work in jms/job-queue-bundle compared to Laravel's scheduler?
The bundle can schedule recurring jobs in its database-backed queue and execute them through its worker. Laravel's scheduler handles cron-style recurring tasks with $schedule->command and $schedule->job, and it is already integrated with the framework's console kernel and queue system. Using the bundle's scheduler would duplicate that with a second, unmaintained scheduling mechanism.
How does jms/job-queue-bundle handle retries and failed jobs?
It supports retrying failed jobs and exposes status and output history for monitoring from the console and a web interface. Laravel handles retries, backoff, and failed-job storage natively through queue workers and the failed_jobs table, with Horizon providing dashboards and tags. If your requirement is retry visibility, Laravel's built-in tooling already covers it without a Symfony dependency.
What should Laravel developers use instead of jms/job-queue-bundle, and how do I migrate?
Map each capability to native Laravel: Artisan::queue or a ShouldQueue job wrapping Artisan::call for command jobs, jobs and failed_jobs tables for persistence, Bus::chain and Bus::batch for dependencies, the scheduler for recurring work, and Horizon for monitoring. Migrating means moving job definitions into Laravel job classes and replacing the jms-job-queue:run worker with queue:work under Supervisor or Horizon. Do not attempt a runtime bridge between the two systems.
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.
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo
bernskioldmedia/laravel-harvest
bernskiold/laravel-data-scrubber
bernskiold/laravel-currency-converter
bernskiold/laravel-campaign-monitor
bernskioldmedia/laravel-autotranslate
siberfx/telegram-bot
roy-sandip/laravel-view-extended
gregsphotography/site-builder-core
roy-sandip/laravel-view
anodyne/blade-fluentui-icons
webx-ui/module-catalog-collections