1 ========================
2 Configuring Libmemcached
3 ========================
10 .. c:function:: memcached_st *memcached_create_with_options(const char *string, size_t string_length)
13 .. c:function:: memcached_return_t libmemcached_check_configuration(const char *option_string, size_t length, char *error_buffer, size_t error_buffer_size)
15 Compile and link with -lmemcached
23 Libmemcached implements a custom language for configuring and modifying
24 servers. By passing in an option string you can generate a memcached_st object
25 that you can use in your application directly.
28 .. describe:: --SERVER=<servername>:<optional_port>/?<optional_weight>
30 Provide a servername to be used by the client. Providing a weight will cause weighting to occur with all hosts with each server getting a default weight of 1.
32 .. describe:: --VERIFY-KEY
34 Verify that keys that are being used fit within the design of the protocol being used.
36 .. describe:: --REMOVE_FAILED_SERVERS
38 Enable the behavior MEMCACHED_BEHAVIOR_REMOVE_FAILED_SERVERS.
40 .. describe:: --BINARY-PROTOCOL
42 Force all connections to use the binary protocol.
44 .. describe:: --BUFFER-REQUESTS
46 Enable MEMCACHED_BEHAVIOR_BUFFER_REQUESTS.
48 .. describe:: --CONFIGURE-FILE=
50 Provide a configuration file to be used to load requests. Beware that by using a configuration file libmemcached will reset memcached_st based on information only contained in the file.
52 .. describe:: --CONNECT-TIMEOUT=
54 Enable MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT.
56 .. describe:: --DISTRIBUTION=
58 Set the distribution model used by the client. See :manpage:`` for more details.
62 Set the hashing alogrthm used for placing keys on servers.
64 .. describe:: --HASH-WITH-PREFIX_KEY
66 .. describe:: --IO-BYTES-WATERMARK=
68 .. describe:: --IO-KEY-PREFETCH=
70 .. describe:: --IO-MSG-WATERMARK=
72 .. describe:: --NOREPLY
74 .. describe:: --NUMBER-OF-REPLICAS=
76 Set the nummber of servers that keys will be replicated to.
78 .. describe:: --POLL-TIMEOUT=
80 .. describe:: --RANDOMIZE-REPLICA-READ
82 Select randomly the server within the replication pool to read from.
84 .. describe:: --RCV-TIMEOUT=
86 .. describe:: --RETRY-TIMEOUT=
88 See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_RETRY_TIMEOUT
90 .. describe:: --SERVER-FAILURE-LIMIT=
92 See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_SERVER_FAILURE_LIMIT
94 .. describe:: --SND-TIMEOUT=
96 See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_SND_TIMEOUT
98 .. describe:: --SOCKET-RECV-SIZE=
100 See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_SOCKET_RECV_SIZE
102 .. describe:: --SOCKET-SEND-SIZE=
104 See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_SOCKET_SEND_SIZE
106 .. describe:: --SORT-HOSTS
108 When adding new servers always calculate their distribution based on sorted naming order.
110 .. describe:: --SUPPORT-CAS
112 See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_SUPPORT_CAS
114 .. describe:: --TCP-NODELAY
116 See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_TCP_NODELAY
118 .. describe:: --TCP-KEEPALIVE
120 See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_TCP_KEEPALIVE
122 .. describe:: --TCP-KEEPIDLE
124 .. describe:: --USE-UDP
126 See :manpage:`memcached_behavior_set(3)` for MEMCACHED_BEHAVIOR_USE_UDP
128 .. describe:: --PREFIX-KEY=
130 .. describe:: INCLUDE
132 Include a file in configuration. Unlike --CONFIGURE-FILE= this will not reset memcached_st
136 Reset memcached_st and continue to process.
140 End configutation processing.
144 End configutation processing and throw an error.
152 memcached_create_with_options() returns a pointer to the memcached_st that was
153 created (or initialized). On an allocation failure, it returns NULL.
164 const char *config_string= "--SERVER=host10.example.com --SERVER=host11.example.com --SERVER=host10.example.com"
165 memcached_st *memc= memcached_create_with_options(config_string, strlen(config_string);
169 memcached_free(memc);
178 To find out more information please check:
179 `https://launchpad.net/libmemcached <https://launchpad.net/libmemcached>`_
188 :manpage:`memcached(1)` :manpage:`libmemcached(3)` :manpage:`memcached_strerror(3)`