NAME
XAS::Lib::Gearman::Worker - An interface to the Gearman job queue.
SYNOPSIS
use XAS::Lib::Gearman::Worker;
sub reverse {
my $job = shift;
....
....
}
my $worker = XAS::Lib::Gearman::Worker->new(
-server => 'localhost',
-port => '4730'
);
$worker->add_function(
-queue => 'reverse',
-function => \&reverse,
-options => {}
);
while ($worker->work());
DESCRIPTION
This is a wrapper module around Gearman::XS::Worker.
METHODS
new
This method intializes the module and connects to the gearman server. It takes two parameters:
- -server
-
The server where gearman resides, defaults to 'localhost'.
- -port
-
The IP port that gearman is listening on, defaults to 4730.
work
This method is used to wait for work from gearman. It handles some common error conditions. It will throw an exception when something unexpected happens.
add_function
Notify gearman that we can handle this function. It takes three parameters:
- -queue
-
The queue that this procedure will listen on.
- -function
-
The callback that will do the work.
- -options
-
Options to be passed to gearman.
SEE ALSO
Gearman::XS
Gearman::XS::Client
Gearman::XS::Worker
XAS::Base
XAS::Class
XAS::Constants
XAS::Exception
XAS::System
XAS::Utils
XAS::Apps::Base::Alerts
XAS::Apps::Base::Collector
XAS::Apps::Base::ExtractData
XAS::Apps::Base::ExtractGlobals
XAS::Apps::Base::RemoveData
XAS::Apps::Database::Schema
XAS::Apps::Templates::Daemon
XAS::Apps::Templates::Generic
XAS::Apps::Test::Echo::Client
XAS::Apps::Test::Echo::Server
XAS::Apps::Test::RPC::Client
XAS::Apps::Test::RPC::Methods
XAS::Apps::Test::RPC::Server
XAS::Collector::Alert
XAS::Collector::Base
XAS::Collector::Connector
XAS::Collector::Factory
XAS::Lib::App
XAS::Lib::App::Daemon
XAS::Lib::App::Daemon::POE
XAS::Lib::Connector
XAS::Lib::Counter
XAS::Lib::Daemon::Logger
XAS::Lib::Daemon::Logging
XAS::Lib::Gearman::Admin
XAS::Lib::Gearman::Admin::Status
XAS::Lib::Gearman::Admin::Worker
XAS::Lib::Gearman::Client
XAS::Lib::Gearman::Client::Status
XAS::Lib::Gearman::Worker
XAS::Lib::Net::Client
XAS::LIb::Net::Server
XAS::Lib::RPC::JSON::Client
XAS::Lib::RPC::JSON::Server
XAS::Lib::Session
XAS::Lib::Spool
XAS::Model::Database
XAS::Model::Database::Alert
XAS::Model::Database::Counter
XAS::Model::DBM
XAS::Monitor::Base
XAS::Monitor::Database
XAS::Monitor::Database::Alert
XAS::Scheduler::Base
XAS::System::Alert
XAS::System::Email
XAS::System::Environment
XAS::System::Logger
AUTHOR
Kevin L. Esteb, <kevin@kesteb.us>
COPYRIGHT AND LICENSE
Copyright (C) 2012 by Kevin L. Esteb
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.