likewinter/queue-throttle

This package is abandoned and no longer maintained. No replacement package was suggested.

Laravel Beanstalkd Queue Throttle

dev-master 2020-09-26 14:04 UTC

This package is auto-updated.

Last update: 2021-02-26 14:49:02 UTC


README

Laravel beanstalkd queue throttle

Installing

Laravel

Register service provider by adding in config/app.php

'providers' => [
    // Other Service Providers
    
    Likewinter\QueueThrottle\QueueThrottleServiceProvider::class
],

Lumen

Register service provider by adding in bootstrap/app.php

$app->register(Likewinter\QueueThrottle\QueueThrottleServiceProvider::class);

Settings

You can set Redis and Beanstalkd hosts in your .env file like

BEANSTALKD_HOST=beanstalkd
REDIS_HOST=redis

Using

Inside your Job class add trait and set limits

use CanLimitRate;

protected $rateLimits = [
    ['requests' => 10, 'seconds' => 10],
    ['requests' => 15, 'seconds' => 30],
];

At the begining of handle() method use throttle

$this->throttle();