hr-d/laravel-queue-rabbitmq

Laravel Queue 的 RabbitMQ 驱动器


README

Latest Stable Version Total Downloads Latest Unstable Version License

####安装

在 composer.json 中需要此包并运行 composer update(重要!请勿使用 "dev-master")

"vladimir-yuldashev/laravel-queue-rabbitmq": "5.1"

composer 更新完成后,您需要将 ServiceProvider 添加到 app.php 文件中的 providers 数组中

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' 		=> [
		'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](https://laravel.net.cn/docs/queues)

####PHPUnit 单元测试将很快提供。

####贡献 您可以通过发现错误和提交问题来为此包做出贡献。祝您享受!

####支持的 Laravel 版本 4.0,4.1,4.2,5.0,5.1 版本通过此库的发布标签进行匹配。