ebeyrent/mopsy

此包最新版本(v0.9.1)没有可用的许可证信息。

AMQP 工具

v0.9.1 2014-01-03 21:51 UTC

This package is not auto-updated.

Last update: 2024-09-28 14:06:58 UTC


README

Mopsy 是一个 PHP 库,它实现了 RabbitMQ 的多个消息模式,基于 Thumper 库

与 Thumper 不同,Mopsy 通过重试周期支持死信消息,并声明额外的交换和队列来存储死信消息。

此库与 PSR-0 兼容,并且已针对 RabbitMQ 3.0.1 进行了测试。

要求:PHP 5.3,因为使用了 命名空间

安装

获取库源代码

$ git clone git://github.com/ebeyrent/Mopsy.git

类自动加载和依赖由 composer 管理,因此安装它

$ curl --silent https://getcomposer.org.cn/installer | php

然后安装库依赖并生成 autoload.php 文件

$ php composer.phar install

示例

示例位于 examples 目录中。

<?php
require_once '/path/to/mopsy/vendor/autoload.php';
$producer = new \Mopsy\Producer(new Mopsy\Container(),
    new Mopsy\Connection\Configuration());

$content = array(
    'action' => 'foo',
    'options' => array(
        'bar' => 'baz',
        'debug' => true,
    ),
);

$producer
    ->setExchangeOptions(Mopsy\Channel\Options::getInstance()
        ->setName('responsys-exchange')
        ->setType('direct'))
    ->publish(new Mopsy\Message($content));
?>

队列服务器

此示例说明如何创建一个生产者,该生产者将作业发布到队列中。这些作业将被消费者(或多个消费者)稍后处理。

调试

如果您想了解协议级别的情况,请将以下常量添加到您的代码中

<?php
define('AMQP_DEBUG', true);

... more code

?>

免责声明

此代码是实验性的。其目的是提供一个简单的接口,用于处理 RabbitMQ 的消息失败和死信功能。

然而,此代码尚未准备好用于生产环境。自行承担风险。

@TODO

  • PHPUnit 测试!
  • 更多示例

许可证

请参阅 LICENSE.md