pnixx/amp-rabbitmq

异步 AMQP 客户端

2.0.0 2024-02-16 07:31 UTC

This package is auto-updated.

Last update: 2024-09-16 08:44:59 UTC


README

Latest Version on Packagist Software License Total Downloads

此库是 AMQP 0-9-1 协议的纯异步 PHP 实现。

代码主要基于 bunnyphpPHPinnacle Ridge,但使用 amphp 进行异步操作。

安装

通过 Composer

$ composer require pnixx/amp-rabbitmq

基本用法

<?php

use Amp\Loop;
use PHPinnacle\Ridge\Channel;
use PHPinnacle\Ridge\Client;
use PHPinnacle\Ridge\Message;
use Revolt\EventLoop;

require __DIR__ . '/vendor/autoload.php';

$client = Client::create('amqp://user:pass@localhost:5672');

$client->connect();

$channel = $client->channel();

$queue = $channel->queueDeclare('queue_name');

for ($i = 0; $i < 10; $i++) {
    $channel->publish("test_$i", '', 'queue_name');
}

$channel->consume(function (Message $message, Channel $channel) {
    echo $message->content() . \PHP_EOL;

    $channel->ack($message);
}, 'queue_name');

EventLoop::run();

更多示例可以在 examples 目录中找到。

测试

$ composer tests

变更日志

请参阅 CHANGELOG 以获取最近更改的更多信息。

贡献

请参阅 CONTRIBUTINGCONDUCT 以获取详细信息。

安全性

如果您发现任何与安全相关的问题,请通过电子邮件 dev@phpinnacle.com 而不是使用问题跟踪器。

致谢

许可

MIT 许可证 (MIT)。请参阅 许可文件 获取更多信息。