PHPackages                             jc-it/yii2-job-queue-recurring - 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. [Queues &amp; Workers](/categories/queues)
4. /
5. jc-it/yii2-job-queue-recurring

ActiveLibrary[Queues &amp; Workers](/categories/queues)

jc-it/yii2-job-queue-recurring
==============================

Job Queue implementation - Recurring extension.

v4.1.0(2mo ago)194MITPHPPHP &gt;=8.3

Since Jun 3Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/JC-IT/yii2-job-queue-recurring)[ Packagist](https://packagist.org/packages/jc-it/yii2-job-queue-recurring)[ RSS](/packages/jc-it-yii2-job-queue-recurring/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (5)Dependencies (4)Versions (6)Used By (0)

A recurring job extension for Job Queue for Yii2 based on Beanstalkd
====================================================================

[](#a-recurring-job-extension-for-job-queue-for-yii2-based-on-beanstalkd)

This extension provides a package that implements a way to store recurring jobs in the database for the yii2 job queue.

```
$ composer require jc-it/yii2-job-queue-recurring
```

or add

```
"jc-it/yii2-job-queue-recurring": ""

```

to the `require` section of your `composer.json` file.

Configuration
-------------

[](#configuration)

A possible implementation for recurring jobs has been added. This implementation stores the recurrence using the [Cron](https://crontab.guru/) notation and an Active Record model. It can easily be extended by creating own implementations for the AR model and Handler.

To use the recurring jobs with the implementation as provided by the package:

- Add `\JCIT\jobqueue\migrations` to your migration namespaces, or extend a new migration from the migration in the package and run them
- Register `\JCIT\jobqueue\jobs\RecurringJob::class` and `\JCIT\jobqueue\jobHandlers\RecurringHandler::class` in the `ContainerMapLocator` (as shown in the configuration)
- Add the recurring action to the controller:

```
public function actions(): array
{
    return [
        'daemon' => \JCIT\jobqueue\actions\DaemonAction::class,
        'recurring' => \JCIT\jobqueue\actions\RecurringJobAction::class,
    ];
}
```

- Run action, i.e. `./yii job-queue/recurring`
- Add a recurring job to the database i.e.

```
$jobFactory = \Yii::createObject(\JCIT\jobqueue\interfaces\JobFactoryInterface::class);
$job = new \JCIT\jobqueue\models\activeRecord\RecurringJob([
    'name' => 'Hello world job',
    'description' => 'Say hello to the world every minute',
    'job_data' => $jobFactory->saveToArray(new \JCIT\jobqueue\jobs\HelloJob('world')),
    'cron' => '* * * * *'
]);
$job->save();
```

Credits
-------

[](#credits)

- [Sam Mousa](https://github.com/SamMousa)
- [Joey Claessen](https://github.com/joester89)

###  Health Score

47

—

FairBetter than 93% of packages

Maintenance86

Actively maintained with recent releases

Popularity12

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity71

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

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 ~457 days

Total

5

Last Release

72d ago

Major Versions

v2.0.1 → v3.0.02025-04-10

v3.0.0 → v4.0.02025-12-23

PHP version history (2 changes)v2.0.0PHP &gt;=8.0

v3.0.0PHP &gt;=8.3

### Community

Maintainers

![](https://www.gravatar.com/avatar/88359ebe0456645a614e563dfbf0dd025b69ef57221050cb9eb31e3eef4dd0f9?d=identicon)[joester89](/maintainers/joester89)

---

Top Contributors

[![joester89](https://avatars.githubusercontent.com/u/9624366?v=4)](https://github.com/joester89 "joester89 (9 commits)")

### Embed Badge

![Health badge](/badges/jc-it-yii2-job-queue-recurring/health.svg)

```
[![Health](https://phpackages.com/badges/jc-it-yii2-job-queue-recurring/health.svg)](https://phpackages.com/packages/jc-it-yii2-job-queue-recurring)
```

###  Alternatives

[laravel/framework

The Laravel Framework.

34.9k556.2M21.5k](/packages/laravel-framework)[shopware/platform

The Shopware e-commerce core

3.4k1.5M3](/packages/shopware-platform)[spatie/laravel-health

Monitor the health of a Laravel application

88212.7M189](/packages/spatie-laravel-health)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.4M236](/packages/sulu-sulu)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.8M674](/packages/shopware-core)[contao/core-bundle

Contao Open Source CMS

1301.7M3.1k](/packages/contao-core-bundle)

PHPackages © 2026

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