PHPackages                             pablohaedo/cakephp-queue - 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. [Database &amp; ORM](/categories/database)
4. /
5. pablohaedo/cakephp-queue

ActiveCakephp-plugin[Database &amp; ORM](/categories/database)

pablohaedo/cakephp-queue
========================

The Queue plugin for CakePHP provides deferred task execution. This is a MongoDB implementation.

3.3.4(6y ago)09MITPHPPHP &gt;=5.6

Since Dec 12Pushed 6y agoCompare

[ Source](https://github.com/pablohaedo/cakephp-queue)[ Packagist](https://packagist.org/packages/pablohaedo/cakephp-queue)[ Docs](http://github.com/rgoro/cakephp-queue)[ RSS](/packages/pablohaedo-cakephp-queue/feed)WikiDiscussions master Synced 6d ago

READMEChangelog (1)Dependencies (5)Versions (14)Used By (0)

CakePHP Queue Plugin
====================

[](#cakephp-queue-plugin)

[![Build Status](https://camo.githubusercontent.com/f4765003174ebf41a5250baedbd1d991415b0dcc427b50a76b0f1e55ccffaa2f/68747470733a2f2f6170692e7472617669732d63692e6f72672f72676f726f2f63616b657068702d71756575652e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/rgoro/cakephp-queue)[![Coverage Status](https://camo.githubusercontent.com/f6e604d8936f7d0dd02ae568319d465d99c49321fc614b899ad38b1c7841992f/68747470733a2f2f696d672e736869656c64732e696f2f636f6465636f762f632f6769746875622f72676f726f2f63616b657068702d71756575652f6d61737465722e737667)](https://codecov.io/github/rgoro/cakephp-queue?branch=master)[![Latest Stable Version](https://camo.githubusercontent.com/d2a042bee0574004482237d9ed9cc65464534a6e5635fba9b0165aa822a6ea08/68747470733a2f2f706f7365722e707567782e6f72672f72676f726f2f63616b657068702d71756575652f762f737461626c652e737667)](https://packagist.org/packages/rgoro/cakephp-queue)[![Minimum PHP Version](https://camo.githubusercontent.com/dd6bad85ee03cf570f4cf82ab69a80396fdbf48050af932f8f23aa551b0d1e5a/687474703a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253345253344253230352e352d3838393242462e737667)](https://php.net/)[![License](https://camo.githubusercontent.com/6ae13f652ae8021c3b24118ac6c40d822aa4e1e71e45407ecb604436c8f4130d/68747470733a2f2f706f7365722e707567782e6f72672f72676f726f2f63616b657068702d71756575652f6c6963656e7365)](https://packagist.org/packages/rgoro/cakephp-queue)[![Total Downloads](https://camo.githubusercontent.com/e21bde716fcf78810cfcee6b297a209f47fab6e39adbb3cb04e4cc16029cce53/68747470733a2f2f706f7365722e707567782e6f72672f72676f726f2f63616b657068702d71756575652f642f746f74616c)](https://packagist.org/packages/rgoro/cakephp-queue)[![Coding Standards](https://camo.githubusercontent.com/dbabe22710e675cb88cd0b12196f1477e2376dea497332775692cf1359a75918/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f63732d5053522d2d322d2d522d79656c6c6f772e737667)](https://github.com/php-fig-rectified/fig-rectified-standards)

This branch is for use with **CakePHP 3**.

What this package is
--------------------

[](#what-this-package-is)

First go read the original background and use cases on [the readme for the original package](https://github.com/dereuromark/cakephp-queue/blob/master/README.md)

This is an implementation of Mark Scherer's [simple Cake PHP queues](https://github.com/dereuromark/cakephp-queue/) replacing MySQL with MongoDB for the backend.

What this package is not
------------------------

[](#what-this-package-is-not)

This is not a drop-in replacement for the original package. While I intend to work with that package's mantainer to integrate this backend, this is intended to satisfy a particular use case first and be of generic use later.

A major issue is that the main classes ([QueuedJobsTable](https://github.com/rgoro/cakephp-queue/blob/master/src/Model/Table/QueuedJobsTable.php), [QueueShell](https://github.com/rgoro/cakephp-queue/blob/master/src/Shell/QueueShell.php) and [QueueTask](https://github.com/rgoro/cakephp-queue/blob/master/src/Shell/Task/QueueTask.php)) were just copied to new MongoDB based implementations ([QueuedJobsCollection](https://github.com/rgoro/cakephp-queue/blob/master/src/Model/MongoCollection/QueuedJobsCollection.php), [MongoQueueShell](https://github.com/rgoro/cakephp-queue/blob/master/src/Shell/MongoQueueShell.php) and [MongoQueueTask](https://github.com/rgoro/cakephp-queue/blob/master/src/Shell/Task/MongoQueueTask.php)). An integrated implementation should have these classes as subclasses of the originals (or a common base class) and a factory to select which implementation to use based on the configuration.

Installation and Usage
----------------------

[](#installation-and-usage)

See [Documentation](docs).

To Do items:
------------

[](#to-do-items)

- The statistics that were implemented in the original package are yet to be ported to Mongo.
- The backend controller has not been revised nor tested.
- Make this implementation compatible with the MySQL implementation.

History
-------

[](#history)

### Recent Improvements

[](#recent-improvements)

- MongoDB Backend
- QueuedJobs table instead of QueuedTasks (Tasks are the implementing classes only)
- json\_encode/decode instead of serialize
- Priority for jobs
- Transactions on getting a new job if supported from the database
- Code improvements, stricter typehinting

### And...

[](#and)

A huge thx to Max ([Dee-Fuse](https://github.com/Dee-Fuse)) for making the 3.x upgrade complete!

Modified by David Yell ([davidyell](https://github.com/davidyell))

- Basic CakePHP 3.x support

Modified by Mark Scherer ([dereuromark](https://github.com/dereuromark))

- CakePHP 2.x support
- Some minor fixes
- Added crontasks (as a different approach on specific problems)
- Possible (optional) Tools Plugin dependencies for frontend access via /admin/queue
- Config key "queue" is now "Queue" ($config\['Queue'\]\[...\])

Added by Christian Charukiewicz ([charukiewicz](https://github.com/charukiewicz)):

- Configuration option 'gcprop' is now 'gcprob'
- Fixed typo in README and variable name (Propability -&gt; Probability)
- Added a few lines about createJob() usage to README
- Added comments to queue.php explaining configuration options

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community18

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor3

3 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 ~160 days

Recently: every ~340 days

Total

13

Last Release

2253d ago

Major Versions

2.2.0 → 3.0.02015-10-30

2.3.0 → 3.1.02016-02-20

2.x-dev → 3.3.32017-03-22

PHP version history (5 changes)2.0.0PHP &gt;=5.3.0

2.2.0PHP &gt;=5.4.0

3.0.0PHP &gt;=5.4.16

3.3.3PHP &gt;=5.5

3.3.4PHP &gt;=5.6

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/948782?v=4)[ph](/maintainers/pablohaedo)[@pablohaedo](https://github.com/pablohaedo)

---

Top Contributors

[![dereuromark](https://avatars.githubusercontent.com/u/39854?v=4)](https://github.com/dereuromark "dereuromark (49 commits)")[![MSeven](https://avatars.githubusercontent.com/u/31497?v=4)](https://github.com/MSeven "MSeven (37 commits)")[![rgoro](https://avatars.githubusercontent.com/u/4028096?v=4)](https://github.com/rgoro "rgoro (23 commits)")[![houseoftech](https://avatars.githubusercontent.com/u/297458?v=4)](https://github.com/houseoftech "houseoftech (14 commits)")[![Graziel](https://avatars.githubusercontent.com/u/5963584?v=4)](https://github.com/Graziel "Graziel (12 commits)")[![drmonkeyninja](https://avatars.githubusercontent.com/u/357623?v=4)](https://github.com/drmonkeyninja "drmonkeyninja (8 commits)")[![charukiewicz](https://avatars.githubusercontent.com/u/6189390?v=4)](https://github.com/charukiewicz "charukiewicz (4 commits)")[![TeckniX](https://avatars.githubusercontent.com/u/33699?v=4)](https://github.com/TeckniX "TeckniX (4 commits)")[![lucatrev](https://avatars.githubusercontent.com/u/77144?v=4)](https://github.com/lucatrev "lucatrev (3 commits)")[![repher](https://avatars.githubusercontent.com/u/2478563?v=4)](https://github.com/repher "repher (3 commits)")[![pablohaedo](https://avatars.githubusercontent.com/u/948782?v=4)](https://github.com/pablohaedo "pablohaedo (2 commits)")[![Spriz](https://avatars.githubusercontent.com/u/3512268?v=4)](https://github.com/Spriz "Spriz (2 commits)")[![suhaboncukcu](https://avatars.githubusercontent.com/u/2428828?v=4)](https://github.com/suhaboncukcu "suhaboncukcu (2 commits)")[![davidyell](https://avatars.githubusercontent.com/u/49889?v=4)](https://github.com/davidyell "davidyell (2 commits)")[![adayth](https://avatars.githubusercontent.com/u/1223929?v=4)](https://github.com/adayth "adayth (2 commits)")[![DeeFuse](https://avatars.githubusercontent.com/u/7376678?v=4)](https://github.com/DeeFuse "DeeFuse (2 commits)")[![dmromanov](https://avatars.githubusercontent.com/u/299059?v=4)](https://github.com/dmromanov "dmromanov (2 commits)")[![AndersTrier](https://avatars.githubusercontent.com/u/384079?v=4)](https://github.com/AndersTrier "AndersTrier (2 commits)")[![kminek](https://avatars.githubusercontent.com/u/373962?v=4)](https://github.com/kminek "kminek (2 commits)")[![wreality](https://avatars.githubusercontent.com/u/463159?v=4)](https://github.com/wreality "wreality (1 commits)")

---

Tags

cakephpqueuemongodbbackgrounddeferred tasks

### Embed Badge

![Health badge](/badges/pablohaedo-cakephp-queue/health.svg)

```
[![Health](https://phpackages.com/badges/pablohaedo-cakephp-queue/health.svg)](https://phpackages.com/packages/pablohaedo-cakephp-queue)
```

###  Alternatives

[dereuromark/cakephp-queue

The Queue plugin for CakePHP provides deferred task execution.

308850.3k14](/packages/dereuromark-cakephp-queue)[mmucklo/queue-bundle

Symfony2/3/4/5 Queue Bundle (for background jobs) supporting Mongo (Doctrine ODM), Mysql (and any Doctrine ORM), RabbitMQ, Beanstalkd, Redis, and ... {write your own}

120839.8k](/packages/mmucklo-queue-bundle)[rybakit/phive-queue

$queue-&gt;push('I can be popped off after', '10 minutes');

16441.5k1](/packages/rybakit-phive-queue)[dereuromark/cakephp-databaselog

A CakePHP plugin for storing and viewing application logs in the database

44165.0k2](/packages/dereuromark-cakephp-databaselog)[pgbi/cakephp3-soft-delete

SoftDelete plugin for CakePHP

87291.9k](/packages/pgbi-cakephp3-soft-delete)[cakephp/queue

Queue plugin for CakePHP

36257.9k12](/packages/cakephp-queue)

PHPackages © 2026

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