PHPackages                             guikingone/scheduler-bundle - 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. guikingone/scheduler-bundle

ActiveSymfony-bundle[Database &amp; ORM](/categories/database)

guikingone/scheduler-bundle
===========================

A Symfony bundle that allows to schedule and create repetitive tasks

0.11.0(4mo ago)115221.5k↓70.7%12[14 issues](https://github.com/Guikingone/SchedulerBundle/issues)[18 PRs](https://github.com/Guikingone/SchedulerBundle/pulls)MITPHPPHP &gt;=8.0CI passing

Since Jan 22Pushed 4mo ago3 watchersCompare

[ Source](https://github.com/Guikingone/SchedulerBundle)[ Packagist](https://packagist.org/packages/guikingone/scheduler-bundle)[ RSS](/packages/guikingone-scheduler-bundle/feed)WikiDiscussions main Synced 3d ago

READMEChangelog (10)Dependencies (76)Versions (62)Used By (0)

[![SchedulerBundleHero](assets/SchedulerBundle.png)](assets/SchedulerBundle.png)

 [![Current bundle version](https://camo.githubusercontent.com/622734360f3787df816a877a816485b6067f7c887adc06198ece00e8a476bb8c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6775696b696e676f6e652f7363686564756c65722d62756e646c653f7374796c653d666c6174)](https://camo.githubusercontent.com/622734360f3787df816a877a816485b6067f7c887adc06198ece00e8a476bb8c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6775696b696e676f6e652f7363686564756c65722d62756e646c653f7374796c653d666c6174) [![Packagist Downloads](https://camo.githubusercontent.com/baeaad04fff6e5037d199cbbf881cdeec2e49bb5dd4760125854b3c5065876b4/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6775696b696e676f6e652f7363686564756c65722d62756e646c65)](https://camo.githubusercontent.com/baeaad04fff6e5037d199cbbf881cdeec2e49bb5dd4760125854b3c5065876b4/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6775696b696e676f6e652f7363686564756c65722d62756e646c65) [![PHP version requirement](https://camo.githubusercontent.com/bbe69bbe85c8d7515dbe3f2be1b0cffd29f46dd9822f40d4d9880586a9f7be4c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f6775696b696e676f6e652f7363686564756c65722d62756e646c653f7374796c653d666c6174)](https://camo.githubusercontent.com/bbe69bbe85c8d7515dbe3f2be1b0cffd29f46dd9822f40d4d9880586a9f7be4c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f6775696b696e676f6e652f7363686564756c65722d62756e646c653f7374796c653d666c6174) [![Symfony Insight](https://camo.githubusercontent.com/b652edf692c3533fdfe426364d9a636a3edb2448672689d07e04c937fdf422ff/68747470733a2f2f696d672e736869656c64732e696f2f73796d666f6e792f692f67726164652f38323562653332382d323966382d343466372d613735302d6638323831386165393131313f7374796c653d666c6174)](https://insight.symfony.com/projects/825be328-29f8-44f7-a750-f82818ae9111) [![Infection score](https://camo.githubusercontent.com/7782574b521862d2d81f67799856c2b69b7f54b1e8e18aca78e2d69a8bc0cd03/68747470733a2f2f696d672e736869656c64732e696f2f656e64706f696e743f7374796c653d666c61742675726c3d687474707325334125324625324662616467652d6170692e737472796b65722d6d757461746f722e696f2532466769746875622e636f6d2532464775696b696e676f6e652532465363686564756c657242756e646c652532466d61696e)](https://camo.githubusercontent.com/7782574b521862d2d81f67799856c2b69b7f54b1e8e18aca78e2d69a8bc0cd03/68747470733a2f2f696d672e736869656c64732e696f2f656e64706f696e743f7374796c653d666c61742675726c3d687474707325334125324625324662616467652d6170692e737472796b65722d6d757461746f722e696f2532466769746875622e636f6d2532464775696b696e676f6e652532465363686564756c657242756e646c652532466d61696e) [![License](https://camo.githubusercontent.com/3f79db79a8c1e089ade7e232b235372cbbb10cdc8fb025f84616c286676156b3/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f4775696b696e676f6e652f5363686564756c657242756e646c653f7374796c653d666c6174)](https://camo.githubusercontent.com/3f79db79a8c1e089ade7e232b235372cbbb10cdc8fb025f84616c286676156b3/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f4775696b696e676f6e652f5363686564756c657242756e646c653f7374796c653d666c6174) [![FOSSA status](https://camo.githubusercontent.com/dbe621dd8079217b4a0147a4b62a9b09f100c511492e0d8074206cedbd4aed58/68747470733a2f2f6170702e666f7373612e636f6d2f6170692f70726f6a656374732f6769742532426769746875622e636f6d2532464775696b696e676f6e652532465363686564756c657242756e646c652e7376673f747970653d736869656c64)](https://app.fossa.com/projects/git%2Bgithub.com%2FGuikingone%2FSchedulerBundle?ref=badge_shield)

Daily runs
   Code style Infection PHPUnit Rector Security Static analysis   [![Code style](https://camo.githubusercontent.com/95633626b795adedcff774cb26eaac09b06c3a6032bb61d1b56fc04b56181355/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f636f64652d7374796c652e796d6c3f6272616e63683d6d61696e267374796c653d666c6174)](https://camo.githubusercontent.com/95633626b795adedcff774cb26eaac09b06c3a6032bb61d1b56fc04b56181355/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f636f64652d7374796c652e796d6c3f6272616e63683d6d61696e267374796c653d666c6174) [![Infection](https://camo.githubusercontent.com/91d89bc11ef2acbe8133f5a8b89073ddce5f784614ba5a694af03e8839abe02f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f696e66656374696f6e2e796d6c3f6272616e63683d6d61696e267374796c653d666c6174)](https://camo.githubusercontent.com/91d89bc11ef2acbe8133f5a8b89073ddce5f784614ba5a694af03e8839abe02f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f696e66656374696f6e2e796d6c3f6272616e63683d6d61696e267374796c653d666c6174) [![PHPUnit](https://camo.githubusercontent.com/447f014f653158a4436e4c119a3f60dffc1f4f02e9a18bb8a6e594b6bc5318e8/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f706870756e69742e796d6c3f6272616e63683d6d61696e267374796c653d666c6174)](https://camo.githubusercontent.com/447f014f653158a4436e4c119a3f60dffc1f4f02e9a18bb8a6e594b6bc5318e8/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f706870756e69742e796d6c3f6272616e63683d6d61696e267374796c653d666c6174) [![Rector](https://camo.githubusercontent.com/05f124af815e63fec36ab0e5e8287dbd6520cecab6920941c33630f8b74a3066/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f726563746f722e796d6c3f6272616e63683d6d61696e267374796c653d666c6174)](https://camo.githubusercontent.com/05f124af815e63fec36ab0e5e8287dbd6520cecab6920941c33630f8b74a3066/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f726563746f722e796d6c3f6272616e63683d6d61696e267374796c653d666c6174) [![Security](https://camo.githubusercontent.com/b35a62d90e9ac6ec2f61dc366eddc6f6f102d13a5c6f520a1450b20af9162f82/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f73656375726974792e796d6c3f6272616e63683d6d61696e267374796c653d666c6174)](https://camo.githubusercontent.com/b35a62d90e9ac6ec2f61dc366eddc6f6f102d13a5c6f520a1450b20af9162f82/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f73656375726974792e796d6c3f6272616e63683d6d61696e267374796c653d666c6174) [![Static analysis](https://camo.githubusercontent.com/7a786b43add974b2557406d038b8384299c06b526c29ebd2614fe8253c5768b6/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f7374617469632d616e616c797369732e796d6c3f6272616e63683d6d61696e267374796c653d666c6174)](https://camo.githubusercontent.com/7a786b43add974b2557406d038b8384299c06b526c29ebd2614fe8253c5768b6/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f4775696b696e676f6e652f5363686564756c657242756e646c652f7374617469632d616e616c797369732e796d6c3f6272616e63683d6d61696e267374796c653d666c6174)

#### A Symfony bundle built to schedule/consume repetitive tasks

[](#a-symfony-bundle-built-to-scheduleconsume-repetitive-tasks)

Main features
-------------

[](#main-features)

- External transports (Doctrine, Redis, etc)
- External configuration storage (Doctrine, Redis, etc)
- Retry / Remove / Sort policies
- Background worker
- [Symfony/Messenger](https://symfony.com/doc/current/messenger.html) integration
- [Mercure](https://www.mercure.rocks) integration
- [Fibers](https://www.php.net/manual/en/language.fibers.php) support

Installation
------------

[](#installation)

Make sure Composer is installed globally, as explained in the [installation chapter](https://getcomposer.org/doc/00-intro.md)of the Composer documentation.

```
composer require guikingone/scheduler-bundle
```

Quick start
-----------

[](#quick-start)

If symfony/flex is not installed, manually update the `config/bundles.php`:

```
// config/bundles.php

return [
    // ...
    SchedulerBundle\SchedulerBundle::class => ['all' => true],
];
```

Then [configure a transport](doc/transport.md) in `config/packages/scheduler.yaml`:

```
# config/packages/scheduler.yaml
scheduler_bundle:
    transport:
        dsn: 'filesystem://first_in_first_out'
```

Finally, it's time to [create a simple task](doc/tasks.md):

```
# config/packages/scheduler.yaml
scheduler_bundle:
    transport:
        dsn: 'filesystem://first_in_first_out'
    tasks:
        foo:
            type: 'command'
            command: 'cache:clear'
            expression: '*/5 * * * *'
            description: 'A simple cache clear task'
            options:
                env: test
```

When a task is configured, time to execute it, two approaches can be used:

- Adding a cron entry `* * * * * cd /path-to-your-project && php bin/console scheduler:consume >> /dev/null 2>&1`
- Launching the command `scheduler:consume --wait` in a background command

Documentation
-------------

[](#documentation)

- [Usage](doc/usage.md)
- [Configuration](doc/configuration.md)
- [Best practices](doc/best_practices.md)
- [Tasks](doc/tasks.md)
- [Transports](doc/transport.md)
- [Lock](doc/lock.md)
- [Commands](doc/command.md)
- [Events](doc/events.md)
- [Lazy Loading](doc/lazy_loading.md)
- [Messenger](doc/messenger.md)
- [HTTP entrypoint](doc/http.md)
- [ExecutionPolicies](doc/execution_policies.md)
- [SchedulePolicies](doc/schedule_policies.md)
- [Runners](doc/runners.md)
- [Worker](doc/worker.md)
- [Scheduler](doc/scheduler.md)
- [Middleware](doc/middleware.md)
- [Probe](doc/probe.md)
- [Tests](doc/test.md)
- [Mercure](doc/mercure.md)

Contributing
============

[](#contributing)

Want to [improve](.github/CONTRIBUTING.md) this bundle?

###  Health Score

55

—

FairBetter than 97% of packages

Maintenance75

Regular maintenance activity

Popularity48

Moderate usage in the ecosystem

Community20

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 78.5% 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 ~45 days

Recently: every ~281 days

Total

42

Last Release

123d ago

PHP version history (3 changes)0.1.0PHP &gt;=7.2

0.2.0PHP &gt;=7.4

0.8.0PHP &gt;=8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/b1ea408dc1a7f312337f13b3a6f01446ccb69e9d53d801abbda36bf38d1f640b?d=identicon)[Guillaume Loulier](/maintainers/Guillaume%20Loulier)

---

Top Contributors

[![Guikingone](https://avatars.githubusercontent.com/u/13744329?v=4)](https://github.com/Guikingone "Guikingone (161 commits)")[![jmsche](https://avatars.githubusercontent.com/u/3929498?v=4)](https://github.com/jmsche "jmsche (28 commits)")[![jvancoillie](https://avatars.githubusercontent.com/u/21243943?v=4)](https://github.com/jvancoillie "jvancoillie (6 commits)")[![babeuloula](https://avatars.githubusercontent.com/u/4849233?v=4)](https://github.com/babeuloula "babeuloula (4 commits)")[![ToshY](https://avatars.githubusercontent.com/u/31921460?v=4)](https://github.com/ToshY "ToshY (2 commits)")[![xaviermarchegay](https://avatars.githubusercontent.com/u/658523?v=4)](https://github.com/xaviermarchegay "xaviermarchegay (1 commits)")[![neeckeloo](https://avatars.githubusercontent.com/u/1768645?v=4)](https://github.com/neeckeloo "neeckeloo (1 commits)")[![tacman](https://avatars.githubusercontent.com/u/619585?v=4)](https://github.com/tacman "tacman (1 commits)")[![asuri0n](https://avatars.githubusercontent.com/u/15729117?v=4)](https://github.com/asuri0n "asuri0n (1 commits)")

---

Tags

crondoctrinefibersmessengerphpredisschedulersymfonysymfony-bundletasksschedulerautomationcronscheduleTasks

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan, Rector

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/guikingone-scheduler-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/guikingone-scheduler-bundle/health.svg)](https://phpackages.com/packages/guikingone-scheduler-bundle)
```

###  Alternatives

[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

585.6M574](/packages/shopware-core)[shopware/platform

The Shopware e-commerce core

3.4k1.5M3](/packages/shopware-platform)[oro/platform

Business Application Platform (BAP)

645143.5k115](/packages/oro-platform)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

9421.6k61](/packages/open-dxp-opendxp)[chameleon-system/chameleon-base

The Chameleon System core.

1028.6k5](/packages/chameleon-system-chameleon-base)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.5k5.9M738](/packages/sylius-sylius)

PHPackages © 2026

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