Update build files.
[m6w6/libmemcached] / docs / libmemcached.rst
index 38346fca6f3dd22805744a1b81608261ae5ce2fc..23ec93b49a9974e6b0b7646d00b96a6f747d1a62 100644 (file)
@@ -1,30 +1,26 @@
-===========
-Introducing
-===========
-
-
-Client library for memcached
-
-
--------
-LIBRARY
--------
-
-
-C Client Library for memcached (libmemcached, -lmemcached)
-
+==============================================
+Introducing the C Client Library for memcached
+==============================================
 
 --------
 SYNOPSIS
 --------
 
+#include <libmemcached/memcached.h>
 
+Compile and link with -lmemcached
 
-.. code-block:: perl
-
-   #include <libmemcached/memcached.h>
+libMemcached is an open source C/C++ client library and tools for the memcached server (http://danga.com/memcached). It has been designed to be light on memory usage, thread safe, and provide full access to server side methods.
 
+libMemcached was designed to provide the greatest number of options to use Memcached. Some of the features provided:
 
+1. Asynchronous and Synchronous Transport Support.
+2. Consistent Hashing and Distribution.
+3. Tunable Hashing algorithm to match keys.
+4. Access to large object support.
+5. Local replication.
+6. A complete reference guide and documentation to the API.
+7. Tools to Manage your Memcached networks.
 
 -----------
 DESCRIPTION
@@ -36,14 +32,14 @@ system, generic in nature, but intended for use in speeding up dynamic web
 applications by alleviating database load." `http://danga.com/memcached/ <http://danga.com/memcached/>`_
 
 \ **libmemcached**\  is a small, thread-safe client library for the
-memcached protocol. The code has all been written with an eye to allow
+memcached protocol. The code has all been written to allow
 for both web and embedded usage. It handles the work behind routing
-particular keys to specific servers that you specify (and values are
-matched based on server order as supplied by you). It implements both
-a modula and consistent method of object distribution.
+individual keys to specific servers specified by the developer (and values are
+matched based on server order as supplied by the user). It implements
+a modular and consistent method of object distribution.
 
 There are multiple implemented routing and hashing methods. See the
-memcached_behavior_set() manpage.
+memcached_behavior_set() manpage for more information.
 
 All operations are performed against a \ ``memcached_st``\  structure.
 These structures can either be dynamically allocated or statically
@@ -54,8 +50,11 @@ recommended that you operate directly against the structure.
 Nearly all functions return a \ ``memcached_return_t``\  value.
 This value can be translated to a printable string with memcached_strerror(3).
 
-Partitioning based on keys is testsed in the library. Using the key partioning 
-functions it is possible to group sets of object onto servers.
+Objects are stored on servers by hashing keys. The hash value maps the key to a particular server. All clients understand how this hashing works, so it is possibly to reliably both push data to a server and retrieve data from a server.
+
+Group keys can be optionally used to group sets of objects with servers. 
+
+Namespaces are supported, and can be used to partition caches so that multiple applications can use the same memcached servers.
 
 \ ``memcached_st``\  structures are thread-safe, but each thread must
 contain its own structure (that is, if you want to share these among
@@ -129,9 +128,9 @@ THREADS AND PROCESSES
 ---------------------
 
 
-When using threads or forked processes it is important to keep an instance
+When using threads or forked processes it is important to keep one instance
 of \ ``memcached_st``\  per process or thread. Without creating your own locking
-structures you can not share a single \ ``memcached_st``\ . You can though call
+structures you can not share a single \ ``memcached_st``\ . However, you can call
 memcached_quit(3) on a \ ``memcached_st``\  and then use the resulting cloned
 structure.
 
@@ -142,7 +141,7 @@ HOME
 
 
 To find out more information please check:
-`https://launchpad.net/libmemcached <https://launchpad.net/libmemcached>`_
+`http://libmemcached.org/ <http://libmemcached.org/>`_
 
 
 --------
@@ -150,12 +149,35 @@ SEE ALSO
 --------
 
 
-:manpage:`memcached(1)` :manpage:`libmemcached_examples(3)` :manpage:`libmemcached(1)` :manpage:`memcat(1)` :manpage:`memcp(1)` :manpage:`memflush(1)` :manpage:`memrm(1)` :manpage:`memslap(1)` :manpage:`memstat(1)` :manpage:`memcached_fetch(3)` :manpage:`memcached_replace(3)` :manpage:`memcached_server_list_free(3)` :manpage:`libmemcached_examples(3)` :manpage:`memcached_clone(3)` :manpage:`memcached_free(3)`
-:manpage:`memcached_server_add(3)` :manpage:`memcached_server_push(3)` :manpage:`memcached_add(3)` :manpage:`memcached_get(3)` :manpage:`memcached_server_count(3)` :manpage:`memcached_servers_parse(3)` :manpage:`memcached_create(3)` :manpage:`memcached_increment(3)` :manpage:`memcached_server_list(3)` :manpage:`memcached_set(3)`
-:manpage:`memcached_decrement(3)` :manpage:`memcached_mget(3)` :manpage:`memcached_server_list_append(3)` :manpage:`memcached_strerror(3)` :manpage:`memcached_delete(3)` :manpage:`memcached_quit(3)` :manpage:`memcached_server_list_count(3)` :manpage:`memcached_verbosity(3)` :manpage:`memcached_server_add_unix_socket(3)` :manpage:`memcached_result_create(3)`  :manpage:`memcached_result_free(3)`
-:manpage:`memcached_result_key_value(3)`  :manpage:`memcached_result_key_length(3)`  :manpage:`memcached_result_value(3)`  :manpage:`memcached_result_length(3)`  :manpage:`memcached_result_flags(3)`  
-:manpage:`memcached_result_cas(3)` :manpage:`memcached_result_st(3)` :manpage:`memcached_append(3)` :manpage:`memcached_prepend(3)` :manpage:`memcached_fetch_result(3)` 
-:manpage:`memerror(1)` :manpage:`memcached_get_by_key(3)` :manpage:`memcached_mget_by_key(3)` :manpage:`memcached_delete_by_key(3)` 
-:manpage:`memcached_fetch_execute(3)` :manpage:`memcached_callback_get(3)` :manpage:`memcached_callback_set(3)` :manpage:`memcached_version(3)` 
-:manpage:`memcached_lib_version(3)` :manpage:`memcached_result_set_value(3)` :manpage:`memcached_dump(3)` :manpage:`memdump(1)`
-:manpage:`memcached_set_memory_allocators(3)` :manpage:`memcached_get_memory_allocators(3)` :manpage:`memcached_get_user_data(3)` :manpage:`memcached_set_user_data(3)`
+:manpage:`memcached(1)` :manpage:`libmemcached_examples(3)`
+:manpage:`libmemcached(1)` :manpage:`memcat(1)` :manpage:`memcp(1)`
+:manpage:`memflush(1)` :manpage:`memrm(1)` :manpage:`memslap(1)`
+:manpage:`memstat(1)` :manpage:`memcached_fetch(3)`
+:manpage:`memcached_replace(3)` :manpage:`memcached_server_list_free(3)`
+:manpage:`libmemcached_examples(3)` :manpage:`memcached_clone(3)`
+:manpage:`memcached_free(3)` :manpage:`memcached_server_add(3)`
+:manpage:`memcached_server_push(3)` :manpage:`memcached_add(3)`
+:manpage:`memcached_get(3)` :manpage:`memcached_server_count(3)`
+:manpage:`memcached_create(3)` :manpage:`memcached_increment(3)`
+:manpage:`memcached_server_list(3)` :manpage:`memcached_set(3)`
+:manpage:`memcached_decrement(3)` :manpage:`memcached_mget(3)`
+:manpage:`memcached_server_list_append(3)` :manpage:`memcached_strerror(3)`
+:manpage:`memcached_delete(3)` :manpage:`memcached_quit(3)`
+:manpage:`memcached_server_list_count(3)` :manpage:`memcached_verbosity(3)`
+:manpage:`memcached_server_add_unix_socket(3)`
+:manpage:`memcached_result_create(3)`  :manpage:`memcached_result_free(3)`
+:manpage:`memcached_result_key_value(3)`
+:manpage:`memcached_result_key_length(3)`
+:manpage:`memcached_result_value(3)`  :manpage:`memcached_result_length(3)`
+:manpage:`memcached_result_flags(3)`  :manpage:`memcached_result_cas(3)`
+:manpage:`memcached_result_st(3)` :manpage:`memcached_append(3)`
+:manpage:`memcached_prepend(3)` :manpage:`memcached_fetch_result(3)`
+:manpage:`memerror(1)` :manpage:`memcached_get_by_key(3)`
+:manpage:`memcached_mget_by_key(3)` :manpage:`memcached_delete_by_key(3)`
+:manpage:`memcached_fetch_execute(3)` :manpage:`memcached_callback_get(3)`
+:manpage:`memcached_callback_set(3)` :manpage:`memcached_version(3)`
+:manpage:`memcached_lib_version(3)` :manpage:`memcached_result_set_value(3)`
+:manpage:`memcached_dump(3)` :manpage:`memdump(1)`
+:manpage:`memcached_set_memory_allocators(3)`
+:manpage:`memcached_get_memory_allocators(3)`
+:manpage:`memcached_get_user_data(3)` :manpage:`memcached_set_user_data(3)`