PHPackages                             zoon/requeue - 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. zoon/requeue

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

zoon/requeue
============

Redis delayed message queue without locks

1.0.3(3y ago)112.8k[2 PRs](https://github.com/zoonru/requeue/pulls)GPL-3.0-onlyPHPPHP &gt;=8.1

Since Dec 6Pushed 2y ago9 watchersCompare

[ Source](https://github.com/zoonru/requeue)[ Packagist](https://packagist.org/packages/zoon/requeue)[ Docs](https://github.com/zoonru/requeue)[ RSS](/packages/zoon-requeue/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (3)DependenciesVersions (7)Used By (0)

ReQueue
=======

[](#requeue)

Redis delayed message queue without locks.

Quick start
===========

[](#quick-start)

Install
-------

[](#install)

```
composer require zoon/requeue
```

Note: Requires Redis &gt;= 2.2.0

Example
-------

[](#example)

**Initialize**

```
$redis = new \Redis();
if (!$redis->connect('127.0.0.1')) {
    exit('no connection');
}
$queue = createQueue($redis);

function createQueue(\Redis $connection): \Zoon\ReQueue\Queue {
	$redisAdapter = new \Zoon\ReQueue\RedisAdapter($connection);
	return new \Zoon\ReQueue\Queue($redisAdapter);
}
```

**Push**

```
$queue->push(new \Zoon\ReQueue\Message('id', time() + 3600, 'data'));
```

**Update**

```
$queue->update('id', function (?\Zoon\ReQueue\Message $old) {
	$time = ($old === null ? time() + 3600 : $old->getTimestamp() + 600);
	$data = ($old === null ? 'data' : $old->getData() . '+new');
	return new \Zoon\ReQueue\MessageData($time, $data);
});
```

**Count**

```
printf("count: %d\n", $queue->count());
```

```
// count: 1
```

**Pop**

```
$timestampRange = new \Zoon\ReQueue\TimestampRange(null, time() + 3600 + 600);
$message = $queue->pop($timestampRange);
if ($message !== null) {
	printf("id: %s\n", $message->getId());
	printf("timestamp: %d\n", $message->getTimestamp());
	printf("data: %s\n", $message->getData());
}
```

```
// id: id
// timestamp: 1575040030
// data: data+new
```

**Clear**

```
$queue->clear();
```

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity21

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity70

Established project with proven stability

 Bus Factor1

Top contributor holds 50% 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 ~419 days

Total

4

Last Release

1096d ago

PHP version history (2 changes)1.0.0PHP &gt;=7.1

1.0.1PHP &gt;=8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/11337ede928f556805cab4f98222f6f8d1f06b460a20e0e603db56fbdb03013c?d=identicon)[zoon](/maintainers/zoon)

---

Top Contributors

[![xtrime-ru](https://avatars.githubusercontent.com/u/34161928?v=4)](https://github.com/xtrime-ru "xtrime-ru (4 commits)")[![ozon1234](https://avatars.githubusercontent.com/u/1094621?v=4)](https://github.com/ozon1234 "ozon1234 (3 commits)")[![sergkash7](https://avatars.githubusercontent.com/u/55360924?v=4)](https://github.com/sergkash7 "sergkash7 (1 commits)")

---

Tags

queueschedule

### Embed Badge

![Health badge](/badges/zoon-requeue/health.svg)

```
[![Health](https://phpackages.com/badges/zoon-requeue/health.svg)](https://phpackages.com/packages/zoon-requeue)
```

###  Alternatives

[php-amqplib/php-amqplib

Formerly videlalvaro/php-amqplib. This library is a pure PHP implementation of the AMQP protocol. It's been tested against RabbitMQ.

4.6k125.3M879](/packages/php-amqplib-php-amqplib)[ramsey/collection

A PHP library for representing and manipulating collections.

1.2k486.0M69](/packages/ramsey-collection)[queue-interop/queue-interop

Promoting the interoperability of MQs objects. Based on Java JMS

48030.5M87](/packages/queue-interop-queue-interop)[phootwork/collection

The phootwork library fills gaps in the php language and provides better solutions than the existing ones php offers.

3924.8M15](/packages/phootwork-collection)[tarantool/queue

PHP bindings for Tarantool Queue.

64136.2k4](/packages/tarantool-queue)[orisai/scheduler

Cron job scheduler - with locks, parallelism and more

4037.1k4](/packages/orisai-scheduler)

PHPackages © 2026

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