2017 © Pedro Peláez
 

library guzzle-queued

Queues asynchronous requests, handled by workers.

image

bentools/guzzle-queued

Queues asynchronous requests, handled by workers.

  • Monday, October 3, 2016
  • by bpolaszek
  • Repository
  • 3 Watchers
  • 1 Stars
  • 89 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 15 Versions
  • 0 % Grown

The README.md

Guzzle Queued Client

This library allows you to send asynchronous requests via Guzzle 6, using a queue system (only Beanstalk supported for the moment)., (*1)

Installation

composer require bentools/guzzle-queued, (*2)

Usage

use BenTools\GuzzleQueued\Client as QueuedClient;
use GuzzleHttp\Psr7\Request as PSR7Request;
use Pheanstalk\Pheanstalk;

require_once __DIR__ . '/../vendor/autoload.php';

$pheanstalk = new Pheanstalk('127.0.0.1');
$guzzle     = new \GuzzleHttp\Client();
$client     = new QueuedClient($guzzle, $pheanstalk);
$request    = new PSR7Request('GET', 'http://httpbin.org/user-agent');
$promise    = $client->sendAsync($request)->then(function (\Psr\Http\Message\ResponseInterface $response) {
    echo (string) $response->getBody();
});

$promise->wait(); // Now the hard work has to be done by a separate PHP process

Launch as many workers as needed with the following command:, (*3)

php vendor/bin/guzzle-request-worker.php &

Event Dispatcher

Create your own worker and hook to the following events:, (*4)

  • \BenTools\GuzzleQueued\JobEvent::BEFORE_PROCESS: before the request is processed
  • \BenTools\GuzzleQueued\JobEvent::AFTER_PROCESS: after the request is processed
  • \BenTools\GuzzleQueued\JobEvent::ERROR: if an error occured

Change response, prevent the request from being effectively sent, delay the request, ..., (*5)

The Versions

03/10 2016

dev-master

9999999-dev

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

03/10 2016

v2.7

2.7.0.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

30/09 2016

v2.6.1

2.6.1.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

29/09 2016

v2.6

2.6.0.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

19/09 2016

v2.4

2.4.0.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

19/09 2016

v2.5

2.5.0.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

14/09 2016

v2.3.2

2.3.2.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

14/09 2016

v2.3.1

2.3.1.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

14/09 2016

v2.3

2.3.0.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

09/09 2016

v2.2

2.2.0.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

The Development Requires

05/09 2016

v2.1

2.1.0.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

The Development Requires

01/09 2016

v2.0.1

2.0.1.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

The Development Requires

31/08 2016

v2.0

2.0.0.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

The Development Requires

24/08 2016

v1.1

1.1.0.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires

 

08/07 2016

v1.0

1.0.0.0

Queues asynchronous requests, handled by workers.

  Sources   Download

MIT

The Requires