leezy/pheanstalk-bundle

The LeezyPheanstalkBundle is a Symfony Bundle that provides a command line interface for manage the Beanstalkd workqueue server & a pheanstalk integration.

Installs: 1 663 014

Dependents: 10

Suggesters: 1

Security: 0

Stars: 123

Watchers: 10

Forks: 46

Open Issues: 2

Type:symfony-bundle

5.0.0 2022-03-08 08:08 UTC

README

Build Status Packagist Scrutinizer Quality Score

Beanstalkd workqueue clients for Symfony.

The LeezyPheanstalkBundle is a Symfony Bundle that provides a pheanstalk integration with the following features:

  • Command Line Interface for manage the queues.
  • An integration to the Symfony event system.
  • An integration to the Symfony profiler system to monitor your beanstalk server.
  • An integration to the Symfony logger system.
  • A proxy system to customize the command features.
  • Auto-wiring: PheanstalkInterface

Support Symfony 2, 3 and 4.

Documentation :

Usage example

<?php

namespace Acme\DemoBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class HomeController extends Controller {

    public function indexAction() {
        $pheanstalk = $this->get("leezy.pheanstalk");

        // ----------------------------------------
        // producer (queues jobs)

        $pheanstalk
          ->useTube('testtube')
          ->put("job payload goes here\n");

        // ----------------------------------------
        // worker (performs jobs)

        $job = $pheanstalk
          ->watch('testtube')
          ->ignore('default')
          ->reserve();

        echo $job->getData();

        $pheanstalk->delete($job);
    }

}
?>

Testing

$ php composer.phar update
$ phpunit

License

This bundle is under the MIT license. See the complete license.

Other

Silex integration

Credits

Author - Thomas Tourlourat

Contributor :