Qutee

PHP Background Jobs (Tasks) Manager using Beanstalkd, Redis or MySQL as backend. Event interface is provided for your logging or statsd-ing needs.


Project maintained by anorgan Hosted on GitHub Pages — Theme by mattgraham

QuTee

Build Status

Simple queue manager and task processor for PHP

Example

<?php
/*
 * Bootstrap / DIC
 */
$redisParams    = array(
    'host'  => '127.0.0.1',
    'port'  => 6379
);
$queuePersistor = new Qutee\Persistor\Redis($redisParams);

$queue          = new Queue();
$queue->setPersistor($queuePersistor);

/*
 * App
 */

// Create Task
$task = new Task;
$task
    ->setName('Acme/DeleteFolder')
    ->setData(array('/usr'))
    ->setPriority(Task::PRIORITY_HIGH);

// Queue it
$queue->addTask($task);

// Or do this in one go
Task::create('Acme/DeleteFolder', array('/usr'), Task::PRIORITY_HIGH);
<?php
// Worker - process all queues (folder_deleter.php)
$worker = new Worker;
$worker->run();

// Or, with more configuration
$worker = new Worker;
$worker
    ->setInterval(30)                   // Run every 30 seconds
    ->setPriority(Task::PRIORITY_HIGH)  // Will only do tasks of this priority
    ->run();