2017 © Pedro Peláez
 

library phive-task-queue

A lightweight task queue on top of rybakit/phive-queue

image

rybakit/phive-task-queue

A lightweight task queue on top of rybakit/phive-queue

  • Friday, August 18, 2017
  • by rybakit
  • Repository
  • 2 Watchers
  • 5 Stars
  • 4,051 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 4 Versions
  • 3 % Grown

The README.md

Phive Task Queue

Build Status, (*1)

A job/task queue on top of the Phive Queue., (*2)

Installation

The recommended way to install Phive Task Queue is through Composer:, (*3)

$ composer require rybakit/phive-task-queue:~1.0@dev

Usage example

// worker.php

use Monolog\Logger;
use Monolog\Handler\StreamHandler;
use Phive\Queue\SysVQueue;
use Phive\TaskQueue\ExecutionContext;
use Phive\TaskQueue\Executor;
use Phive\TaskQueue\ExecutorAdapter\CallableExecutorAdapter;

// create a queue
// see a list of available queues: https://github.com/rybakit/phive-queue#queues
$queue = new SysVQueue(0xDEADBEAF, true);

// create a logger
// can be any PSR-3 compliant logger
$logger = new Logger('worker');
$logger->pushHandler(new StreamHandler(STDOUT, Logger::INFO));

// create a callback
$callback = function ($payload, LoggerInterface $logger) {
    $logger->info(strrev($payload));
};

$adapter = new CallbackExecutorAdapter(new DirectCallbackResolver($callback));
$context = new ExecutionContext($queue, $logger);
$executor = new Executor($adapter, $context);

// main loop
while (true) {
    if (!$executor->execute()) {
        sleep(1);
    }
}
// client.php

use Phive\Queue\SysVQueue;

$queue = new SysVQueue(0xDEADBEAF, true);

// send a payload object to the queue and delay execution for 5 seconds
// see supported item types: https://github.com/rybakit/phive-queue#item-types
$queue->push('Hello world!', '+5 seconds');

License

Phive Task Queue is released under the MIT License. See the bundled LICENSE file for details., (*4)

The Versions

18/08 2017

dev-master

9999999-dev https://github.com/rybakit/phive-task-queue

A lightweight task queue on top of rybakit/phive-queue

  Sources   Download

MIT

The Requires

 

The Development Requires

by Eugene Leonovich

task scheduler queue job worker priority delayed

05/08 2014

v0.3.0

0.3.0.0 https://github.com/rybakit/phive-task-queue

A lightweight task queue on top of rybakit/phive-queue

  Sources   Download

MIT

The Requires

 

by Eugene Leonovich

queue job task worker scheduler priority delayed

10/07 2014

v0.2.0

0.2.0.0 https://github.com/rybakit/phive-task-queue

A lightweight task queue on top of rybakit/phive-queue

  Sources   Download

MIT

The Requires

 

by Eugene Leonovich

queue job task worker scheduler priority delayed

09/07 2014

v0.1.0

0.1.0.0 https://github.com/rybakit/phive-task-queue

A lightweight task queue on top of rybakit/phive-queue

  Sources   Download

MIT

The Requires

 

by Eugene Leonovich

queue job task worker scheduler priority delayed