An Erlang Memcached Client.
Erlang Perl C++
Pull request Compare This branch is 47 commits ahead of joewilliams:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
include
src
t
NOTICES
README.md
rebar
rebar.config

README.md

merle : An erlang based memcached client

Authors

Info

License

  • This code is available as Open Source Software under the MIT license.

Features

  • Support for stats, version, getkey, getskey, delete, set, add, replace, cas, flushall, verbosity

Notes

  • Uses term_to_binary and binary_to_term to serialize/deserialize Erlang terms before sending/receiving them. This allows for native Erlang terms to be returned from memcached.
  • To use with other libraries and languages (ie. json-encoded data, use s_* functions)
  • Uses a simple connection pool handling connection errors.

Other Merle Based Projects

Usage

Connecting to memcached

Using defaults:

> merle:connect().

Set your own:

> merle:connect("HOSTNAME", 11211).

A few operations:

> merle:set(a, asdf).
ok
> merle:getkey(a).
asdf

> merle:set(a, asdf).
ok
> merle:getskey(a).
[4,asdf]
> merle:cas(a, 4, asdfasdf).
ok
> merle:getskey(a).
[5,asdfasdf]

> merle:delete(a).
ok

Informational commands

> merle:version().
["VERSION 1.2.6"]

> merle:stats(slabs).
["STAT 1:chunk_size 104","STAT 1:chunks_per_page 10082",
 "STAT 1:total_pages 1","STAT 1:total_chunks 10082",
 "STAT 1:used_chunks 10081","STAT 1:free_chunks 1",
 "STAT 1:free_chunks_end 10080","STAT active_slabs 1",
 "STAT total_malloced 1048528","END"]

> merle:stats().
["STAT pid 27195","STAT uptime 497","STAT time 1232843046",
 "STAT version 1.2.6","STAT pointer_size 64",
 "STAT rusage_user 0.000000","STAT rusage_system 0.008000",
 "STAT curr_items 1","STAT total_items 5","STAT bytes 83",
 "STAT curr_connections 2","STAT total_connections 5",
 "STAT connection_structures 3","STAT cmd_get 5",
 "STAT cmd_set 5","STAT get_hits 5","STAT get_misses 0",
 "STAT evictions 0","STAT bytes_read 216",
 "STAT bytes_written 468","STAT limit_maxbytes 67108864",
 "STAT threads 1","END"]