1LIBMEMCACHED(3) libmemcached-awesome LIBMEMCACHED(3)
2
3
4
6 libmemcached - C/C++ Client Library for memcached
7
9 #include <libmemcached/memcached.h>
10 Compile and link with -lmemcached
11
12
13 ----
14
15
16
17 libmemcached is an open source C/C++ client library and tools for the
18 memcached server (http://memcached.org/). It has been designed to be
19 light on memory usage, thread safe, and provide full access to server
20 side methods.
21
22 libmemcached was designed to provide the greatest number of options to
23 use Memcached. Some of the features provided:
24
25 1. Asynchronous and Synchronous Transport Support.
26
27 2. Consistent Hashing and Distribution.
28
29 3. Tunable Hashing algorithm to match keys.
30
31 4. Access to large object support.
32
33 5. Local replication.
34
35 6. A complete reference guide and documentation to the API.
36
37 7. Tools to Manage your Memcached networks.
38
40 "Memcached is a high-performance, distributed memory object caching
41 system, generic in nature, but intended for use in speeding up dynamic
42 web applications by alleviating database load." http://memcached.org/
43
44 libmemcached is a small, thread-safe client library for the memcached
45 protocol. The code has all been written to allow for both web and em‐
46 bedded usage. It handles the work behind routing individual keys to
47 specific servers specified by the developer (and values are matched
48 based on server order as supplied by the user). It implements a modular
49 and consistent method of object distribution.
50
51 There are multiple implemented routing and hashing methods. See the
52 memcached_behavior_set() manpage for more information.
53
54 All operations are performed against a memcached_st structure. These
55 structures can either be dynamically allocated or statically allocated
56 and then initialized by memcached_create(). Functions have been written
57 in order to encapsulate the memcached_st. It is not recommended that
58 you operate directly against the structure.
59
60 Nearly all functions return a memcached_return_t value. This value can
61 be translated to a printable string with memcached_strerror().
62
63 Objects are stored on servers by hashing keys. The hash value maps the
64 key to a particular server. All clients understand how this hashing
65 works, so it is possibly to reliably both push data to a server and re‐
66 trieve data from a server.
67
68 Group keys can be optionally used to group sets of objects with
69 servers.
70
71 Namespaces are supported, and can be used to partition caches so that
72 multiple applications can use the same memcached servers.
73
74 Some features of the library must be enabled through
75 memcached_behavior_set().
76
78 No global variables are used in this library.
79
80 memcached_st structures are thread-safe, but when using threads or
81 forked processes it is important to keep one instance of memcached_st
82 per process or thread. Without creating your own locking structures you
83 can not share a single memcached_st. However, you can call
84 memcached_quit() on a memcached_st and then use the resulting cloned
85 structure.
86
88 libmemcached can be built to support Systemtap on Linux when enabled at
89 compile time.
90
91 Please see stap(1) and dtrace(1) for more information about Systemtap.
92
94 libmemcached comes with a few useful client programs:
95
96 memaslap(1) memcapable(1) memcat(1) memcp(1) memdump(1) memerror(1)
97 memexist(1) memflush(1) memparse(1) memping(1) memrm(1) memslap(1) mem‐
98 stat(1) memtouch(1)
99
101 libhashkit(3) libmemcachedutil(3)
102
104 memcached(1) libmemcached_configuration(3) libmemcached_examples(3)
105
106 memcached_analyze(3) memcached_append(3) memcached_auto(3) mem‐
107 cached_behavior(3) memcached_callback(3) memcached_cas(3) mem‐
108 cached_create(3) memcached_delete(3) memcached_dump(3) memcached_ex‐
109 ist(3) memcached_fetch(3) memcached_flush(3) memcached_flush_buffers(3)
110 memcached_generate_hash_value(3) memcached_get(3) memcached_last_er‐
111 ror_message(3) memcached_memory_allocators(3) memcached_pool(3) mem‐
112 cached_quit(3) memcached_result_st(3) memcached_return_t(3) mem‐
113 cached_sasl(3) memcached_servers(3) memcached_server_st(3) mem‐
114 cached_set(3) memcached_set_encoding_key(3) memcached_stats(3) mem‐
115 cached_strerror(3) memcached_touch(3) memcached_user_data(3) mem‐
116 cached_verbosity(3) memcached_version(3)
117
118
119
120
1211.1 Jul 20, 2023 LIBMEMCACHED(3)