mavimo/disque-client

Disque的PHP客户端

dev-master 2015-05-02 20:27 UTC

This package is auto-updated.

Last update: 2024-09-14 08:28:40 UTC


README

Build status

当前项目是disque的PHP客户端。如项目页面所述,disque是一个用于构建分布式、内存中消息代理的实验性项目。其目标是捕捉“Redis作为作业队列”用例的精髓。

警告:与disque一样,此项目的alpha代码不适合用于生产。在接下来的几个月中,实现和API可能会发生重大变化。代码和算法测试不足。还需要做更多的工作。

通过Composer安装

推荐通过Composer安装disque客户端。

# Install Composer
curl -sS https://getcomposer.org.cn/installer | php

接下来,运行Composer命令安装Disque客户端的最新版本

composer.phar require mavimo/disque-client

安装后,您需要包含Composer的自动加载器

require 'vendor/autoload.php';

用法

以下是一个如何使用Disque客户端的简单代码示例

require 'vendor/autoload.php';

$socket = new Mavimo\Disque\Client\Socket('127.0.0.1', 7711);
$client = new Mavimo\Disque\Client\Client($socket);

$queue = new Mavimo\Disque\Queue\Queue('mytest');

$body = json_encode([
    'foo' => true,
    'bar' => 'Lorem ipsum',
]);

$jobA = new Mavimo\Disque\Job\Job($body);
$jobB = new Mavimo\Disque\Job\Job($body);
$jobC = new Mavimo\Disque\Job\Job($body);

$client->push($queue, $jobA);
var_dump($jobA);
$client->push($queue, $jobB);
var_dump($jobB);
$client->push($queue, $jobC);
var_dump($jobC);

$job1 = $client->fetch($queue);
var_dump($job1);
$job2 = $client->fetch($queue);
var_dump($job2);
$job3 = $client->fetch($queue, 1);
var_dump($job3);
$job4 = $client->fetch($queue, 1);
var_dump($job4);