alchemy/rabbitmq-management-client
最新稳定版本:0.2.1
Composer 安装命令:
composer require alchemy/rabbitmq-management-client
包简介
RabbitMQ Management Plugin API Client
关键字:
README 文档
README
This library is intended to help management of RabbitMQ server in an application. It provides two ways to query RabbitMQ : Synchronous query with Guzzle and Asynchronous query with React.
Asynchronous Queries
use RabbitMQ\Management\AsyncAPIClient; use React\EventLoop\Factory; $loop = Factory::create(); $client = AsyncAPIClient::factory($loop, array( 'url' => '127.0.0.1', )); $loop->addPeriodicTimer(1, function () use ($client) { $client->listQueues() ->then(function($queues) { echo "\n------------\n"; foreach ($queues as $queue) { echo sprintf("Found queue %s with %d messages\n", $queue->name, $queue->messages); } }, function ($error) { echo "An error occured : $error\n"; }); }); $loop->run();
Asynchronous Client do not currently support Guarantee API.
Synchronous Queries
Ensure a queue has a flag :
use RabbitMQ\Management\APIClient; use RabbitMQ\Management\Entity\Queue; use RabbitMQ\Management\Exception\EntityNotFoundException; $client = APIClient::factory(array('url'=>'localhost')); try { $queue = $client->getQueue('/', 'queue.leuleu'); if (true !== $queue->durable) { $queue->durable = true; $client->deleteQueue('/', 'queue.leuleu'); $client->addQueue($queue); } } catch (EntityNotFoundException $e) { $queue = new Queue(); $queue->vhost = '/'; $queue->name = 'queue.leuleu'; $queue->durable = true; $client->addQueue($queue); }
You can also use the Guarantee manager :
use RabbitMQ\Management\APIClient; use RabbitMQ\Management\Entity\Queue; use RabbitMQ\Management\Guarantee; $client = APIClient::factory(array('url'=>'localhost')); $manager = new Guarantee($client); $queue = new Queue(); $queue->vhost = '/'; $queue->name = 'queue.leuleu'; $queue->durable = true; $queue->auto_delete = false; $queue = $manager->ensureQueue($queue);
API Browser
Browse the API here.
Documentation
Read the documentation at Read The Docs !
License
This library is released under the MIT license (use it baby !)
统计信息
- 总下载量: 42.57k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 42
- 点击次数: 0
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2012-11-21