承接 qwep-ru/rabbitmq-management-client 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

qwep-ru/rabbitmq-management-client

Composer 安装命令:

composer require qwep-ru/rabbitmq-management-client

包简介

Fork of scroller123/rabbitmq-management-client

README 文档

README

Build Status

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 !)

统计信息

  • 总下载量: 5
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 24
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-03-26

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固