EV-Gearman
view release on metacpan or search on metacpan
eg/reconnect.pl view on Meta::CPAN
#!/usr/bin/perl
# Worker that auto-reconnects: kill gearmand and restart it; the worker
# re-registers its functions and resumes the GRAB loop automatically.
use strict;
use warnings;
use EV;
use EV::Gearman;
my $g = EV::Gearman->new(
host => '127.0.0.1',
port => 4730,
reconnect => 1,
reconnect_delay => 500,
max_reconnect_attempts => 0, # unlimited
keepalive => 30,
on_connect => sub { warn "connected\n" },
on_disconnect => sub { warn "disconnected\n" },
on_error => sub { warn "error: @_\n" },
);
$g->register_function(echo => sub { $_[0]->workload });
$g->work;
EV::run;
( run in 0.753 second using v1.01-cache-2.11-cpan-14f38c9f855 )