mhlavac / gearman
Gearman (http://www.danga.com/gearman) is a system to farm out work to other machines. It can load balance function calls to lots of machines and allows you to call functions between languages. It can also run all function calls in parallel.
Installs: 51 712
Dependents: 2
Suggesters: 0
Security: 0
Stars: 8
Watchers: 2
Forks: 5
Open Issues: 4
Requires
- php: >=5.3.0
Requires (Dev)
- fabpot/php-cs-fixer: ~1.10
- phpunit/phpunit: ~4.0
This package is not auto-updated.
Last update: 2020-12-16 00:13:18 UTC
README
⚠ This package is abandoned and no longer maintained, please check packagist for alternative Gearman PHP clients ⚠️
PHP library 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
Add following line to your composer.json
"mhlavac/gearman": "dev"
You can use following command
composer.phar require --dev mhlavac/geaman:dev
Examples
Client
<?php $client = new \MHlavac\Gearman\Client(); $client->addServer(); $result = $client->doNormal('replace', 'PHP is best programming language!'); $client->doBackground('long_task', 'PHP rules... PHP rules...');
Worker
<?php $function = function($payload) { return str_replace('java', 'php', $payload); }; $worker = new \MHlavac\Gearman\Worker(); $worker->addServer(); $worker->addFunction('replace', $function); $worker->work();
Versioning
This library uses semantic versioning.
License
This library is under the new BSD license. See the complete license. See the complete license
About
I've started working on this because you can't compile PECL gearman extension on windows where I had to use the code. Goal of this project is to make copy of the PECL gearman extension and allow PHP developers to use this implementation as a polyfill for it.