forked from brianlmoon/net_gearman
-
Notifications
You must be signed in to change notification settings - Fork 0
A PHP interface for Danga's Gearman
j03k64/net_gearman
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Net_Gearman
About
Net_Gearman is a PEAR package for interfacing with Danga's Gearman. Gearman is a system to farm out work to other machines, dispatching function calls to machines that are better suited to do work, to do work in parallel, to load balance lots of function calls, or to call functions between languages.
Installation
1. Install PEAR if it is not already installed on your system.
2. Use git to pull this repo to your servers. Be sure where you install it is in the autoload or include path before the rest of PEAR.
Examples
Client
<?php
require_once 'Net/Gearman/Client.php';
$client = new Net_Gearman_Client('localhost:7003');
$client->someBackgroundJob(array(
'userid' => 5555,
'action' => 'new-comment'
));
?>
Job
<?php
class Net_Gearman_Job_someBackgroundJob extends Net_Gearman_Job_Common
{
public function run($args)
{
if (!isset($args['userid']) || !isset($args['action'])) {
throw new Net_Gearman_Job_Exception('Invalid/Missing arguments');
}
// Insert a record or something based on the $args
return array(); // Results are returned to Gearman, except for
// background jobs like this one.
}
}
?>
Worker
For easiest use, use GearmanManager for running workers. See: https://github.com/brianlmoon/GearmanManager
<?php
require_once 'Net/Gearman/Worker.php';
$worker = new Net_Gearman_Worker('localhost:7003');
$worker->addAbility('someBackgroundJob');
$worker->beginWork();
?>
About
A PHP interface for Danga's Gearman
Resources
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- PHP 100.0%