X-Git-Url: http://git.kpe.io/?p=memstore.git;a=blobdiff_plain;f=doc%2Fmemcache.html;fp=doc%2Fmemcache.html;h=2352e11c3d24695d480f8a1475c2ecc5e65551b0;hp=0000000000000000000000000000000000000000;hb=91a4befe34e15ab6c4c74901b3a16ec370c5de02;hpb=881e2c561c5c9de3fe4bb962da256552fa03d796 diff --git a/doc/memcache.html b/doc/memcache.html new file mode 100644 index 0000000..2352e11 --- /dev/null +++ b/doc/memcache.html @@ -0,0 +1,55 @@ +
Library for memcached protocol
+ +Author: Kevin Rosenberg kevin@rosenberg.net, based on the
+cl-memcached
library by Abhijit 'quasi' Rao and
+Chaitanya Gupta .
Date Started: July 1, 2011
+ +This package is based on the cl-memcached
library. It is
+substantially modified for use with the
+memstore library. The primary areas of
+additional functionality are:
Support for flags field with get and set functions. +This is required as memstore stores bit flags denoting +how the data is serialized. That information is required +to deserialize the data.
Support for additional memcached functionality, such as
+the gets command for retrieving CAS identifiers. The CAS
+unique ID is used for the added :cas
storage command.
+Other storage commands newly supported are :append
and
+:prepend
.
All communication now uses mc-send-command
function with
+transparently supports writing strings with write-byte
.
+This allows usocket
to be used on other Lisp implementations
+besides AllegroCL. Because cl-memcached used write-string
+with usocket-stream, only AllegroCL was supported.
+By sending all data as (unsigned-byte 8), all Lisp implementions
+supported by usocket
are now supported with memcached
.
Encapsulated reading and writing to socket stream to avoid +handling \#return characters in high-level code.
Changes to support the change in statistics fields with membase.
+Some fields were no longer present. Also, membase 1.7 has
+187 statistics fields versus the 20 fields supported in
+cl-memcached
. New function mc-get-stat
allows to retrieving
+any statistics field by name.
More robust print-object
functions to avoid errors if fields
+in statistics are not present.
Removed compatibility functions in compat.lisp
by using the
+kmrcl
library to provide those
+functions as well as utilitizing other kmrcl
functions to simplify
+code.
Added functions to support all memcached API commands,
+such as flush_all
and version
.
Support for the moreply
command argument accepted by
+many commands.
Support the noreply
argument that many API commands accept.
Write nearly the entire code base for improved +clarity, robustness, and efficiency.