PHPackages                             flowpack/jobqueue-doctrine - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. flowpack/jobqueue-doctrine

ActiveNeos-package

flowpack/jobqueue-doctrine
==========================

Implements concrete Queue for the doctrine work queue. Requires the packages flowpack/jobqueue-common to be installed.

3.3.0(2y ago)6226.4k↑13.6%94MITPHP

Since Jul 21Pushed 1y ago2 watchersCompare

[ Source](https://github.com/Flowpack/jobqueue-doctrine)[ Packagist](https://packagist.org/packages/flowpack/jobqueue-doctrine)[ RSS](/packages/flowpack-jobqueue-doctrine/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (2)Versions (18)Used By (4)

Flowpack.JobQueue.Doctrine
==========================

[](#flowpackjobqueuedoctrine)

A job queue backend for the [Flowpack.JobQueue.Common](https://github.com/Flowpack/jobqueue-common) package based on [Doctrine](http://www.doctrine-project.org/).

Usage
-----

[](#usage)

Install the package using Composer:

```
composer require flowpack/jobqueue-doctrine

```

If not already installed, that will fetch its requirements, namely the `jobqueue-common` package.

Now the queue can be configured like this:

```
Flowpack:
  JobQueue:
    Common:
      queues:
        'some-queue':
          className: 'Flowpack\JobQueue\Doctrine\Queue\DoctrineQueue'
          executeIsolated: true
          options:
            defaultTimeout: 50
          releaseOptions:
            priority: 512
            delay: 120
```

The required tables can be created executing:

```
./flow queue:setup some-queue

```

Boost Mode
----------

[](#boost-mode)

The poll interval should be short enough to process messages in time, and long enough to minimize resource consumption for the database. Boost mode is a solution which automatically handles spikes by processing messages in quick succession. When no new messages appear for a specified time, boost mode is disabled again.

The frequency by which the queue loop will look for new messages is the configured `pollInterval`. In boost mode, the option `boostPollInterval` is used instead. `boostTime` defines the time since the last processed message after which boost mode is deactivated again.

Specific options
----------------

[](#specific-options)

The `DoctrineQueue` supports following options:

OptionTypeDefaultDescriptiondefaultTimeoutinteger60Number of seconds new messages are waited for before a timeout occurs, this is overridden by a "timeout" argument in the `waitAndTake()` and `waitAndReserve()` methodspollIntervalfloat1Number of seconds between SQL lookups for new messagesboostPollIntervalfloat0.5Number of seconds between SQL lookups for new messages when in "boost mode"boostTimefloat10Maximum number of seconds since last processed message to activate "boost mode"tableNamestringflowpack\_jobqueue\_messages\_Name of the database table for this queue. By default this is the queue name prefixed with "flowpack\_jobqueue\_messages\_"backendOptionsarray-Doctrine-specific connection params (see [Doctrine reference](http://doctrine-orm.readthedocs.io/projects/doctrine-dbal/en/latest/reference/configuration.html))*NOTE:* The `DoctrineQueue` should work with any database supported by Doctrine DBAL. It has been tested on MySQL, PostgreSQL, SQL Server and SQLite. You can specify the backend via the `backendOptions`. If you omit this setting, the *current connection* will be re-used (i.e. the currently active Flow database).

### Submit options

[](#submit-options)

Additional options supported by `JobManager::queue()`, `DoctrineQueue::submit()` and the `Job\Defer` annotation:

OptionTypeDefaultDescriptiondelayinteger0Number of seconds before a message is marked "ready" after submission. This can be useful to prevent premature execution of jobs (i.e. before entities are persisted)### Release options

[](#release-options)

Additional options to be specified via `releaseOptions` for the queue:

OptionTypeDefaultDescriptiondelayinteger0Number of seconds before a message is marked "ready" after it has been released.License
-------

[](#license)

This package is licensed under the MIT license

Contributions
-------------

[](#contributions)

Pull-Requests are more than welcome. Make sure to read the [Code Of Conduct](CodeOfConduct.rst).

###  Health Score

46

—

FairBetter than 93% of packages

Maintenance32

Infrequent updates — may be unmaintained

Popularity42

Moderate usage in the ecosystem

Community24

Small or concentrated contributor base

Maturity72

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~174 days

Recently: every ~152 days

Total

17

Last Release

802d ago

Major Versions

1.0.0 → 2.0.02017-02-21

2.0.1 → 3.0.02018-06-19

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/307571?v=4)[Bastian Waidelich](/maintainers/bwaidelich)[@bwaidelich](https://github.com/bwaidelich)

---

Top Contributors

[![kdambekalns](https://avatars.githubusercontent.com/u/95873?v=4)](https://github.com/kdambekalns "kdambekalns (19 commits)")[![robertlemke](https://avatars.githubusercontent.com/u/95582?v=4)](https://github.com/robertlemke "robertlemke (18 commits)")[![daniellienert](https://avatars.githubusercontent.com/u/642226?v=4)](https://github.com/daniellienert "daniellienert (10 commits)")[![bwaidelich](https://avatars.githubusercontent.com/u/307571?v=4)](https://github.com/bwaidelich "bwaidelich (6 commits)")[![albe](https://avatars.githubusercontent.com/u/4259532?v=4)](https://github.com/albe "albe (3 commits)")[![sorenmalling](https://avatars.githubusercontent.com/u/531918?v=4)](https://github.com/sorenmalling "sorenmalling (2 commits)")[![markusguenther](https://avatars.githubusercontent.com/u/1014126?v=4)](https://github.com/markusguenther "markusguenther (1 commits)")[![jonakieling](https://avatars.githubusercontent.com/u/876839?v=4)](https://github.com/jonakieling "jonakieling (1 commits)")

---

Tags

flowframeworkflowpackjobqueueneoscms

### Embed Badge

![Health badge](/badges/flowpack-jobqueue-doctrine/health.svg)

```
[![Health](https://phpackages.com/badges/flowpack-jobqueue-doctrine/health.svg)](https://phpackages.com/packages/flowpack-jobqueue-doctrine)
```

###  Alternatives

[neos/neos

An open source Content Application Platform based on Flow. A set of core Content Management features is resting within a larger context that allows you to build a perfectly customized experience for your users.

116989.0k674](/packages/neos-neos)[neos/event-sourcing

Lean and opinionated way to integrate Event Sourcing and CQRS pattern in your Flow framework package

45289.4k4](/packages/neos-event-sourcing)[neos/eel

The Embedded Expression Language (Eel) is a building block for creating Domain Specific Languages

122.0M27](/packages/neos-eel)[neos/media

The Media package

101.1M45](/packages/neos-media)[neos/flow-base-distribution

Flow Base Distribution

2159.5k](/packages/neos-flow-base-distribution)[avency/neos-vardump

Neos VarDump Package

147.1k](/packages/avency-neos-vardump)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
