PHPackages                             hinashiki/fuelphp-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. [Queues &amp; Workers](/categories/queues)
4. /
5. hinashiki/fuelphp-queue

ActiveFuel-package[Queues &amp; Workers](/categories/queues)

hinashiki/fuelphp-queue
=======================

FuelPHP 1.7.x or later, add original Queue system

0.2.0(10y ago)43.3k[1 issues](https://github.com/hinashiki/fuelphp-queue/issues)MITPHP

Since Mar 7Pushed 10y ago2 watchersCompare

[ Source](https://github.com/hinashiki/fuelphp-queue)[ Packagist](https://packagist.org/packages/hinashiki/fuelphp-queue)[ Docs](https://github.com/hinashiki/fuelphp-queue)[ RSS](/packages/hinashiki-fuelphp-queue/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (5)Used By (0)

fuelphp-queue
=============

[](#fuelphp-queue)

Add original queue system to FuelPHP 1.7.x or later.
This is FuelPHP package. If you want to use, please use as package.
How to install :

Preparation
-----------

[](#preparation)

1. Install Orm package.
    This package depends on fuelphp orm package.
    If you don't have orm package, please install before use this.

```
php oil package install orm

```

- Migrate Database.
    This package need to create task\_queue table.
    You must prepare database which supported Fuel\\Core\\DB classes.
    If you already have database, can migrate by this package.

```
php oil refine migrate --packages=fuelphp-queue

```

Easy Usage
----------

[](#easy-usage)

1. Push queue in your application.

```
\Model_TaskQueue::save_queue(
    "Static::method",
    array($arg1, $arg2 ...)
);

```

- Run queue by task.

```
php oil refine queue

```

---

Model\_Taskqueue documentation
------------------------------

[](#model_taskqueue-documentation)

#### `save_queue($method, $options, $duplicate_type = null, $priority = null)`

[](#save_queuemethod-options-duplicate_type--null-priority--null)

Push task queue.

##### String `$method`

[](#string-method)

Method name that you want to call. Method must be defined static.

##### Array `$options`

[](#array-options)

Method's arguments.

##### Integer `$duplicate_type`

[](#integer-duplicate_type)

You can define and set queue type.
If you run queue in parallel, `$duplicate_type` can set max queue that you execute to each type.
Please also check the config `queue.duplicate_type` if you use this option.

##### Integer `$priority`

[](#integer-priority)

You can define and set queue's priority.
If you have many task in task\_queues, `Model_TaskQueue::pick()` choose most minimum priority queue.
Please also check the config `queue.queue_default_priority` if you use this option.

Task documentation
------------------

[](#task-documentation)

#### `php oil refine queues`

[](#php-oil-refine-queues)

Run a queue. Queue is selected by `Model_Taskqueue::pickup()`.
This task can use in parallel. Also you can set execute limit by `queue.queue_parallel_number`.

#### `php oil refine queues:clean`

[](#php-oil-refine-queuesclean)

Delete old queues that succeeded before than 2 weeks.
This delete is physical delete.
If you change this term, please change config `queue.success_queue_delete_term`.

Config documentation
--------------------

[](#config-documentation)

#### `queue.duplicate_type`

[](#queueduplicate_type)

Can set Integer key and Integer value.
Key is `taks_queues.duplicate_type` value in database table, and value is parallel execute limit.
If not set value in this config and set value in db value, `Model_TaskQueue::pickup() `throw OutOfRangeException.

*Notice: You can't set 0 key in this config because 0 used as default value.*

#### `queue.zombie_recover_time`

[](#queuezombie_recover_time)

Limitation of queue execute time.
If queue status stay 'exec' over this time, status is back to 'wait'
when use `Model_Taskqueue::recover_zombie_queues()` or run next queue task.
Default value is `-1 hour`.

#### `queue.success_queue_delete_term`

[](#queuesuccess_queue_delete_term)

Set the physical delete term.
when call the task `php oil refine queues:clean`, delete old queues that succeeded before than you set.
Default value is `-14 days`.

#### `queue.queue_parallel_number`

[](#queuequeue_parallel_number)

Number of you can execute task `queues` in Parallel.
Default value is `3`.

#### `queue.queue_default_priority`

[](#queuequeue_default_priority)

Can set priority number. `0` is top priority.
You can set task priority when queue insert using `Model_TaskQueue::save_queue()`.
Default value is `100`.

#### `queue.queue_pid_prefix`

[](#queuequeue_pid_prefix)

Task `queues` are managed by pid file. Pid file is created tmp directory in your application.
You can set original pid prefix for avoid name confliction.
Default value is `queue`.

#### `queue.logical_delete`

[](#queuelogical_delete)

Logical delete schema setting.
Default values are above.

- Not delete = `0`
- Deleted = `1`

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance15

Infrequent updates — may be unmaintained

Popularity21

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity56

Maturing project, gaining track record

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

Total

3

Last Release

3949d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/08bb6fbe3f575f83e7297f7ee09f39b823e19929b7e6db1b71c459d5236f31f6?d=identicon)[hinashiki](/maintainers/hinashiki)

---

Top Contributors

[![hinashiki](https://avatars.githubusercontent.com/u/2562497?v=4)](https://github.com/hinashiki "hinashiki (16 commits)")

### Embed Badge

![Health badge](/badges/hinashiki-fuelphp-queue/health.svg)

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

###  Alternatives

[league/geotools

Geo-related tools PHP 7.3+ library

1.4k5.3M26](/packages/league-geotools)[humanmade/cavalcade

A better wp-cron. Horizontally scalable, works perfectly with multisite.

538286.9k4](/packages/humanmade-cavalcade)[react/async

Async utilities and fibers for ReactPHP

2228.8M171](/packages/react-async)[react/promise-stream

The missing link between Promise-land and Stream-land for ReactPHP

11512.9M45](/packages/react-promise-stream)[illuminate/bus

The Illuminate Bus package.

6043.8M409](/packages/illuminate-bus)[google/cloud-pubsub

Cloud PubSub Client for PHP

9017.1M63](/packages/google-cloud-pubsub)

PHPackages © 2026

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