ramilexe / laravel-queue-rabbitmq
Laravel Queue 的 RabbitMQ 驱动程序
5.8
2016-09-26 14:18 UTC
Requires
- php: >=5.5.9
- illuminate/queue: 5.2.*|5.3.*
- illuminate/support: 5.2.*|5.3.*
- php-amqplib/php-amqplib: 2.6.*
This package is not auto-updated.
Last update: 2024-09-12 00:04:05 UTC
README
####安装
在您的 composer.json 中要求此包,并运行 composer update(重要!请勿使用 "dev-master")
"vladimir-yuldashev/laravel-queue-rabbitmq": "5.1"
composer update 完成后,您需要在 app.php 中的 providers 数组中添加 ServiceProvider
VladimirYuldashev\LaravelQueueRabbitMQ\LaravelQueueRabbitMQServiceProvider::class,
将这些行添加到您的 app/config/queue.php 文件中的 connections 数组
'rabbitmq' => [
'driver' => 'rabbitmq',
'host' => env('RABBITMQ_HOST', '127.0.0.1'),
'port' => env('RABBITMQ_PORT', 5672),
'vhost' => env('RABBITMQ_VHOST', '/'),
'login' => env('RABBITMQ_LOGIN', 'guest'),
'password' => env('RABBITMQ_PASSWORD', 'guest'),
'queue' => env('RABBITMQ_QUEUE'), // name of the default queue,
'exchange_declare' => env('RABBITMQ_EXCHANGE_DECLARE', true), // create the exchange if not exists
'queue_declare_bind' => env('RABBITMQ_QUEUE_DECLARE_BIND', true), // create the queue if not exists and bind to the exchange
'queue_params' => [
'passive' => env('RABBITMQ_QUEUE_PASSIVE', false),
'durable' => env('RABBITMQ_QUEUE_DURABLE', true),
'exclusive' => env('RABBITMQ_QUEUE_EXCLUSIVE', false),
'auto_delete' => env('RABBITMQ_QUEUE_AUTODELETE', false),
],
'exchange_params' => [
'name' => env('RABBITMQ_EXCHANGE_NAME', null),
'type' => env('RABBITMQ_EXCHANGE_TYPE', 'direct'), // more info at https://rabbitmq.cn/tutorials/amqp-concepts.html
'passive' => env('RABBITMQ_EXCHANGE_PASSIVE', false),
'durable' => env('RABBITMQ_EXCHANGE_DURABLE', true), // the exchange will survive server restarts
'auto_delete' => env('RABBITMQ_EXCHANGE_AUTODELETE', false),
],
],
并将这些属性添加到 .env 文件中,使用适当的值
QUEUE_DRIVER=rabbitmq
RABBITMQ_HOST=127.0.0.1
RABBITMQ_PORT=5672
RABBITMQ_VHOST=/
RABBITMQ_LOGIN=guest
RABBITMQ_PASSWORD=guest
RABBITMQ_QUEUE=queue_name
您也可以在 src/examples 文件夹中找到完整的示例。
####使用
配置完成后,您可以使用 Laravel Queue API。如果您已使用其他队列驱动程序,则无需进行其他更改。如果您不知道如何使用 Queue API,请参阅官方 Laravel 文档:https://laravel.net.cn/docs/queues
####PHPUnit 单元测试将很快提供。
####贡献