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(3w ago)192MITPHPPHP &gt;=8.3

Since Jun 3Pushed 6mo 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 today

READMEChangelog (4)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

46

—

FairBetter than 92% of packages

Maintenance79

Regular maintenance activity

Popularity13

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

26d 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 (8 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.8k543.8M20.1k](/packages/laravel-framework)[spatie/laravel-health

Monitor the health of a Laravel application

87512.0M164](/packages/spatie-laravel-health)[sulu/sulu

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

1.3k1.4M203](/packages/sulu-sulu)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9762.4M131](/packages/roots-acorn)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

585.6M574](/packages/shopware-core)[contao/core-bundle

Contao Open Source CMS

1231.6M2.8k](/packages/contao-core-bundle)

PHPackages © 2026

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