alchemy/queue-component

消息队列组件

0.1.6 2022-11-28 14:07 UTC

This package is not auto-updated.

Last update: 2024-09-16 23:09:42 UTC


README

License Packagist Travis Coverage Scrutinizer Packagist

alchemy/queue-component 是一个库,它为 AMQP 提供了最简化的发布/订阅抽象

安装

唯一支持的安装方法是使用 Composer。在您的项目中运行以下命令以引入此包:

composer require alchemy/queue-component

快速入门指南

// Note: the following array contains all available parameters and their default values
// Every configuration key is optional, and its default value used when not defined in parameters
$parameters = [
    'host' => 'localhost',
    'vhost' => '/',
    'port' => 5672,
    'user' => 'guest',
    'password' => 'guest',
    'exchange' => 'alchemy-exchange',
    'dead-letter-exchange' => 'alchemy-dead-exchange',
    'queue' => 'alchemy-queue'
];

$factory = Alchemy\Queue\Amqp\AmqpMessageQueueFactory::create($parameters);

// Publish a message
$factory->getNamedQueue('my-queue')->publish(new Message('message body', 'correlation-id'));

// Consume next message in queue
$handler = new Alchemy\Queue\NullMessageHandler();
$resolver = new Alchemy\Queue\MessageHandlerResolver($handler);
$factory->getNamedQueue('my-queue')->handle($resolver);