biigle / laravel-round-robin-queue
此包已被弃用且不再维护。未建议替代包。
适用于多个队列连接的循环负载均衡队列
v1.1.2
2020-03-31 06:10 UTC
Requires
- illuminate/cache: ^5.5|^6.0
- illuminate/contracts: ^5.5|^6.0
- illuminate/queue: ^5.5|^6.0
- illuminate/support: ^5.5|^6.0
Requires (Dev)
- laravel/laravel: ^5.5|^6.0
- mockery/mockery: ^1.2
- phpunit/phpunit: ^8.0
This package is auto-updated.
Last update: 2020-11-09 12:36:03 UTC
README
Laravel或Lumen中多个队列连接的循环负载均衡队列。
与多个biigle/laravel-remote-queue
连接配合良好。
安装
composer require biigle/laravel-round-robin-queue
Laravel
Laravel会自动发现服务提供者。
Lumen
将$app->register(Biigle\RoundRobinQueue\RoundRobinQueueServiceProvider::class);
添加到bootstrap/app.php
。
设置
循环队列需要持久化缓存来正确工作。请确保您已设置缓存且不要使用array
缓存。
使用
在queue.connections
中配置一个新的队列连接以使用类似以下的roundrobin
驱动
// queue.connections [ 'rr' => [ 'driver' => 'roundrobin', 'queue' => 'default', 'connections' => ['q1', 'q2'], ], 'q1' => [/* ... */], 'q2' => [/* ... */], ]
连接期望额外的配置选项queue
和connections
。queue
选项设置新作业应推入的默认队列名称。connections
选项设置用于负载均衡的其他队列连接。
每次您使用roundrobin
驱动向队列推送新作业时,它将按循环方式转发到connections
中配置的连接之一。示例
use Queue; $queue = Queue::connection('rr'); $queue->push($job1); // Pushed to connection 'q1'. $queue->push($job2); // Pushed to connection 'q2'. $queue->push($job3); // Pushed to connection 'q1'. $queue->push($job4); // Pushed to connection 'q2'.