GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Gearman::Client(3) User Contributed Perl Documentation Gearman::Client(3)

Gearman::Client - Client for gearman distributed job system

    use Gearman::Client;
    my $client = Gearman::Client->new;
    $client->job_servers(
      '127.0.0.1',
      {
        host      => '10.0.0.1',
        port      => 4730,
        socket_cb => sub {...},
        use_ssl   => 1,
        ca_file   => ...,
        cert_file => ...,
        key_file  => ...,
      }
    );

    # running a single task
    my $result_ref = $client->do_task("add", "1+2", {
      on_fail => sub {...},
      on_complete => sub {...}
    });
    print "1 + 2 = $$result_ref\n";

    # waiting on a set of tasks in parallel
    my $taskset = $client->new_task_set;
    $taskset->add_task( "add" => "1+2", {
       on_complete => sub { ... }
    });
    $taskset->add_task( "divide" => "5/0", {
       on_fail => sub { print "divide by zero error!\n"; },
    });
    $taskset->wait;

Gearman::Client is a client class for the Gearman distributed job system, providing a framework for sending jobs to one or more Gearman servers. These jobs are then distributed out to a farm of workers.

Callers instantiate a Gearman::Client object and from it dispatch single tasks, sets of tasks, or check on the status of tasks.

Gearman::Client is derived from Gearman::Objects

Creates a new Gearman::Client object, and returns the object.

If %options is provided, initializes the new client object with the settings in %options, which can contain:

  • exceptions

    If true, the client sends an OPTION_REQ exceptions <http://gearman.org/protocol/> request for each connection to the job server. This causes job server to forward WORK_EXCEPTION packets to the client.

  • job_servers

    List of job servers. Value should be an array reference, hash reference or scalar.

    Calls Gearman::Objects to set job_servers

  • prefix

    Calls prefix (see Gearman::Objects) to set the prefix / namespace.

  • command_timeout

    Maximum time a gearman command should take to get a result (not a job timeout)

    default: 30 seconds

  • backoff_max

    Max number of failed connection attempts before an job server will be temporary disabled

    default: 90

This is an example client that sends off a request to sum up a list of integers.

    use Gearman::Client;
    use Storable qw( freeze );
    my $client = Gearman::Client->new;
    $client->job_servers('127.0.0.1');
    my $tasks = $client->new_task_set;
    my $handle = $tasks->add_task(sum => freeze([ 3, 5 ]), {
        on_complete => sub { print ${ $_[0] }, "\n" }
    });
    $tasks->wait;

See the Gearman::Worker documentation for the worker for the sum function.

If you intend using UTF-8 data with SSL based connection, beware there is no UTF-8 support in underlying Net::SSLeay. "Forcing-Unicode-in-Perl-(Or-Unforcing-Unicode-in-Perl)" in perlunicode describes proper workarounds.

Creates and returns a new Gearman::Taskset object.

return "{job_server => {job => {capable, queued, running}}}"

supported only by Gearman::Server

return "{job-server => {job => {address, listeners, key}}}"

supported only by Gearman::Server

Dispatches a task and waits on the results. May either provide a Gearman::Task object, or the 3 arguments that the Gearman::Task constructor takes.

return scalarref of WORK_COMPLETE result, or undef on failure.

Dispatches a "task" and doesn't wait for the result. Return value is an opaque scalar that can be used to refer to the task with get_status.

It is strongly recommended to set Gearman::Task "uniq" option to insure gearmand does not squash jobs if it store background jobs in a persistence backend. See the issue #87 <https://github.com/gearman/gearmand/issues/87#issuecomment-291119785>

return the handle from the jobserver, or undef on failure

run a hook callback if defined

add a hook

The Gearman Server will assign a scalar job handle when you request a background job with dispatch_background. Save this scalar, and use it later in order to request the status of this job.

return Gearman::JobStatus on success

Copyright 2006-2007 Six Apart, Ltd.

License granted to use/distribute under the same terms as Perl itself.

This is free software. This comes with no warranty whatsoever.

 Brad Fitzpatrick (<brad at danga dot com>)
 Jonathan Steinert (<hachi at cpan dot org>)
 Alexei Pastuchov (<palik at cpan dot org>) co-maintainer

<https://github.com/p-alik/perl-Gearman.git>
2018-08-24 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.