Class Worker
Der Worker stellt Methoden bereit, die vom Server aufgerufen werden können.
Über die Methode Worker::work() werden Methoden automatisch registriert. Die Namen der Methoden die automatisch registriert werden sollen, müssen mit do anfangen. Andere Methoden können manuell über Worker::registerMethod() registriert werden.
// Eigene Workerklasse; mit Methode toLower class MyWorker extends \Alvine\Infrastructure\Gearman\Worker { protected function doToLower(\Alvine\Infrastructure\Gearman\Worker\Job $job) { $this->sendData($job, \strtolower((string) $job->getPayload())); } } $worker = new MyWorker('localhost'); // Es können auch Lambda-Methoden registriert werden. $worker->Second = function() {}; // Groß-/Kleinschreibung beachten! $worker->registerMethod('Second'); // Prüfen ob Server verfügbar $worker->ping(); // Methoden registrieren und Abarbeitung starten $worker->work();
- Alvine\Net\Client
- Alvine\Infrastructure\Gearman\AbstractClient
- Alvine\Infrastructure\Gearman\Worker
Package: Alvine\Infrastructure\Gearman
Category: Alvine
License: Alvine Nutzungslizenz
Author: schukai GmbH info@schukai.de
Version: $Revision:$
Since: 20140515
Link: alvine.io
Link: Dokumentation
Located at Worker.class.php
public
|
|
protected
|
#
registerDoMethods( )
Alle Methoden die mit do-anfangen werden registrieren. Diese Methode registriert die Methoden nur einmal und merkt sich den Zustand. Alle weiteren Aufrufe haben keine Funktion mehr. Der Zustand kann über self::resetAbilities() zurückgesetzt werden. |
public
|
|
public
|
#
resetAbilities( )
Setzt alle am Server registrierten Methoden zurück. Der Worker führt ab diesem Zeitpunkt keine Arbeiten mehr aus. |
public
boolean
|
|
protected
|
|
protected
|
#
handleJob(
Job zuweisen und ausführen |
public
|
|
public
|
|
protected
|
#
sendStatus(
Senden des Standes für Backend-Jobs. $numerator ist der Antel von $denominator der erledigt wurde. Der folgende Aufruf sagt das 50% von 100% erledigt sind. |
protected
|
__construct(),
isReceivedFinished(),
sendPacket()
|
PROTOCOL_PORT
|
protected
boolean
|
$registerd
Status der Registrierung |
#
false
|