nag/gearmanager

用于处理和管理的gearman工作客户端的小型库

dev-master 2014-03-30 14:30 UTC

This package is not auto-updated.

Last update: 2024-09-24 06:01:15 UTC


README

版本 1.0.0 [首次发布]

使用

使用文件 src/Nag/Gearmanager.php

使用 configtasks 数组扩展 Gearmanager 类。

config 必须如下所示

$config = array (
    'host' => '127.0.0.1',
    'port' => 4730
);

tasks 如下所示

$tasks = array (
    'Task\Sendemail', 'Task\Sendsms'. ... ... ...
);

执行工作任务

根据应用程序所需的优先级,可以使用以下函数

  • fireEvent()
  • fireParallel()
  • fireUrgent()

fireEvent()fireParallel() 参数

  • 字符串 $task [完全限定任务类名]
  • 数组 $payload
  • 字符串 $priority [值:normal, low, high;默认值为 'normal']

fireUrgent() 参数

  • 字符串 $task [完全限定任务类名]
  • 数组 $payload
  • 字符串 $priority [值:low, high;默认值为 'low']

它返回字符串 $response

示例

use Nag\Gearmanager;

$config = array (
    'host' => '127.0.0.1',
    'port' => 4730
);

$tasks = array (
    'Task\Sendemail'
);

$gearmanager = new Gearmanager($config, $tasks);

$gearmanager->fireEvent('Task\Sendemail', array('to' => 'john@doe.com', 'msg' => 'Hello!'), 'normal');

$gearmanager->fireParallel('Task\Sendemail', array('to' => 'john@doe.com', 'msg' => 'Hello!'), 'low');

$response = $gearmanager->fireUrgent('Task\Sendemail', array('to' => 'john@doe.com', 'msg' => 'Hello!'), 'high');