Andrea Guzzo > Shardcache-Client-Fast-0.15 > Shardcache::Client::Fast

Download:
Shardcache-Client-Fast-0.15.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.15   Source  

NAME ^

Shardcache::Client::Fast - Perl extension for the client part of libshardcache

SYNOPSIS ^

  use Shardcache::Client::Fast;
  @hosts = ("peer1:localhost:4444", "peer2:localhost:4445", "peer3:localhost:4446" );
  $secret = "some_secret";
  $c = Shardcache::Client::Fast->new(\@hosts, $secret, $log_level);

  # Set a new value for key "key"
  $rc = $c->set("key", "value");
  if ($rc != 0) {
    die "Error setting key 'key' : " . $c->errstr;
  }

  # Read the value back
  $v = $c->get("key");
  if (!$v && $c->errno) {
    die "Error getting value for key 'key' : " . $c->errstr;
  }

  # set the key "key2" and make it expire in 60 seconds
  $c->set("key2", "value2", 60);

  # evict "key"
  $c->evict("key");

  # remove "key2" prematurely
  $c->del("key2");

  
  # check if "peer3" is alive
  if ($c->check("peer3") != 0) {
    warn "peer3 is not responding";
  }

  # get the index of keys existing on "peer2"
  $index = $c->index("peer2");

DESCRIPTION ^

Perl bindings to libshardcache-client. This library is a replacement for the pure-perl Sharcache::Client allowing faster access to shardcache nodes by using libshardcache directly instead of reimplementing the protocol and handling connections on the perl side.

EXPORT

None by default.

METHODS ^

REQUIRED PARAMS

me
    A 'address:port' string describing the current node
storage
    A valid Shardcache::Storage subclass, implementing the underlying storage

OPTIONAL PARAMS

nodes
    An arrayref containing the nodes in our shardcache 'cloud'
secret
    A secret used to compute the signature used for internal communication.
    If not specified the string 'default' will be used 

SEE ALSO ^

Mention other useful documentation such as the documentation of related modules or operating system documentation (such as man pages in UNIX), or any relevant external documentation such as RFCs or standards.

If you have a mailing list set up for your module, mention it here.

If you have a web site set up for your module, mention it here.

AUTHOR ^

xant, <xant@xant.net>

COPYRIGHT AND LICENSE ^

Copyright (C) 2013 by xant

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.12.4 or, at your option, any later version of Perl 5 you may have available.

syntax highlighting: