NAME
Job::Machine - Job queue handling
DESCRIPTION
A small, but versatile and efficient system for sending jobs to a message queue and communicating answers back to the sender.
Job::Machine uses LISTEN / NOTIFY from PostgreSQL to send signals between workers and clients
SYNOPSIS
The Client:
my $client = Job::Machine::Client->new(jobclass => 'job.task');
my $id = $client->send({foo => 'bar'});
The Worker is a subclass
use base 'Job::Machine::Worker';
sub process {
my ($self, $data) = @_;
$self->reply({baz => 'Yeah!'}) if $data->{foo} eq 'bar';
};
and then use the worker
my $worker = Worker->new(jobclass => 'job.task');
$worker->receive;
Back at the Client:
if ($client->check('reply')) {
print $client->receive->{baz};
}
SUPPORT
Report tickets to http://rt.cpan.org/Job-Machine/
AUTHOR
Kaare Rasmussen <kaare@cpan.org>.
COPYRIGHT
Copyright (C) 2009, Kaare Rasmussen
This module is free software; you can redistribute it or modify it under the same terms as Perl itself.