NAME

IPC::AnyEvent::Gearman - IPC through gearmand.

VERSION

version 0.6

SYNOPSIS

use AnyEvent;
use IPC::AnyEvent::Gearman;

#receive    
my $recv = IPC::AnyEvent::Gearman->new(job_servers=>['localhost:9999']);
$recv->on_recv(sub{
    my $msg = shift;
    print "received msg : $data\n";
    return "OK";#result
});
$recv->listen();

my $cv = AE::cv;
$cv->recv;

#send
my $send = IPC::AnyEvent::Gearman->new(server=>['localhost:9999']);
$send->pid(1102);
my $result = $send->send("TEST DATA");

ATTRIBUTES

pid

'pid' is unique id for identifying each process. This can be any value not just PID. It is filled own PID by default.

job_servers

ArrayRef of hosts.

prefix

When register function, it uses prefix+pid as function name. It is filled 'IPC::AnyEvent::Gearman#' by default.

on_recv

on_recv Hander. First argument is DATA which is sent. This can be invoked after listen().

on_sent

on_sent handler. First argument is a channel string.

on_fail

on_fail handler. First argument is a channel string.

METHODS

listen

To receive message, you MUST call listen().

channel

get prefix+pid

send

To send data to process listening prefix+pid, use this.

my $sender = IPC::AnyEvent::Gearman->new(job_servers=>['localhost:9998']);
$sender->prefix('MYIPC');
$sender->send(1201,'DATA');

AUTHOR

KHS, HyeonSeung Kim <sng2nara@hanmail.net>

COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by HyeonSeung Kim.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.