Disque - Perl client for Disque, an in-memory, distributed job queue


    ## Connection:
    ## perl-disque will try to connect to any available server in the order
    ## is have been set, if there is any disque instance available,
    ## the client will generate a connection error and will abort.
    ## if you not spicify any server in conection `new()`
    ## by default will only connect to ''.

    use Disque;

    # Defaults disque connects to
    my $disque = Disque->new;
    my $disque = Disque->new(servers => '');

    # Disque connects to multiple instances by default behaviour
    my $disque = Disque->new(servers => ["localhost:7711", "localhost:7712"]);

    # Use UNIX domain socket
    my $disque = Disque->new(unixsock => '/tmp/disque.sock');

    # Enable connection timeout (in seconds)
    my $disque = Disque->new(sock_timeout => 10);

    # Enable read timeout (in seconds)
    my $disque = Disque->new(read_timeout => 0.5);

    # Enable write timeout (in seconds)
    my $disque = Disque->new(write_timeout => 1.2);


    #You can use this library with single or multi-node clusters.

    ## Connection:

    # When you invoke "new()" you can choose in which method you will connect to the cluster,
    # of course, this only will happen if ther is more than 1 node spicified.

    # By default, as Salvatore [specified](
    # in the doc, the lib will try to connect to any available server in a randomly way.

    # But also if you won't to connect to the server randomly you can specify
    # the param "disable_random_connect => 1" in new() sub, for example:

    my $disque = Disque->new(
        servers => ['localhost:7711', 'localhost:7712', 'localhost:7713'],
        disable_random_connect => 1

    # So you will connect into the cluster in the order that you have set the nodes.


The commands that are allready available are: add_job get_job ack_job fast_ack qlen qpeek enqueue dequeue del_job show


Disque is a client to Disque client library. This module must works on top of Redis lib, and uses some of the internal subs in Redis lib.