MEMCACHED_SERVER_COUNT(3) libmemcached-awesome MEMCACHED_SERVER_COUNT(3) NAME memcached_server_count - libmemcached Documentation SYNOPSIS #include Compile and link with -lmemcached uint32_t memcached_server_count(memcached_st <#_CPPv412memcached_st> *ptr) Parameters ptr -- pointer to initialized memcached_st <# _CPPv412memcached_st> struct Returns number of configured servers memcached_return_t <#_CPPv418memcached_return_t> memcached_server_add(memcached_st <#_CPPv412memcached_st> *ptr, const char *hostname, in_port_t port) Parameters o ptr -- pointer to initialized memcached_st <# _CPPv412memcached_st> struct o hostname -- hostname or IP address of the TCP server to add o port -- port of the TCP server Returns memcached_return_t <#_CPPv418memcached_return_t> indicating success memcached_return_t <#_CPPv418memcached_return_t> memcached_server_add_udp(memcached_st <#_CPPv412memcached_st> *ptr, const char *hostname, in_port_t port) Parameters o ptr -- pointer to initialized memcached_st <# _CPPv412memcached_st> struct o hostname -- hostname or IP address of the UDP server to add o port -- port of the UDP server Returns memcached_return_t <#_CPPv418memcached_return_t> indicating success memcached_return_t <#_CPPv418memcached_return_t> memcached_server_add_unix_socket(memcached_st <#_CPPv412memcached_st> *ptr, const char *socket) Parameters o ptr -- pointer to initialized memcached_st <# _CPPv412memcached_st> struct o socket -- path to the UNIX socket of the server to add Returns memcached_return_t <#_CPPv418memcached_return_t> indicating success memcached_return_t <#_CPPv418memcached_return_t> memcached_server_push(memcached_st <#_CPPv412memcached_st> *ptr, const memcached_server_st *list) Parameters o ptr -- pointer to initialized memcached_st <# _CPPv412memcached_st> struct o list -- pre-configured list of servers to push Returns memcached_return_t <#_CPPv418memcached_return_t> indicating success const memcached_instance_st *memcached_server_by_key(memcached_st <# _CPPv412memcached_st> *ptr, const char *key, size_t key_length, memcached_return_t <#_CPPv418memcached_return_t> *error) Parameters o ptr -- pointer to initialized memcached_st <# _CPPv412memcached_st> struct o key -- key to hash and lookup a server o key_length -- length of key without any terminating zero o error -- pointer to memcached_return_t <# _CPPv418memcached_return_t> indicating success Returns the server instance to be used for storing/retrieving key const memcached_instance_st *memcached_server_get_last_disconnect(const memcached_st <#_CPPv412memcached_st> *ptr) Parameters ptr -- pointer to initialized memcached_st <# _CPPv412memcached_st> struct Returns the instance of the last server for which there was a connection problem memcached_return_t <#_CPPv418memcached_return_t> memcached_server_cursor(const memcached_st <#_CPPv412memcached_st> *ptr, const memcached_server_fn *callback, void *context, uint32_t number_of_callbacks) Parameters o ptr -- pointer to initialized memcached_st <# _CPPv412memcached_st> struct o callback -- list of memcached_server_fn to be called for each server instance o context -- pointer to user supplied context for the callback o number_of_callbacks -- number of callbacks supplied Returns memcached_return_t <#_CPPv418memcached_return_t> indicating success typedef memcached_return_t <#_CPPv418memcached_return_t> (*memcached_server_fn)(const memcached_st <#_CPPv412memcached_st> *ptr, const memcached_instance_st *server, void *context) Param ptr pointer to the memcached_st <#_CPPv412memcached_st> struct Param server pointer to memcached_instance_st Param context pointer to user supplied context Returns memcached_return_t <#_CPPv418memcached_return_t> indicating success DESCRIPTION libmemcached performs operations on a list of hosts. The order of these hosts determine routing to keys. Functions are provided to add keys to memcached_st <#_CPPv412memcached_st> structures. To manipulate lists of servers see memcached_server_st. memcached_server_count() provides you a count of the current number of servers being used by a memcached_st <#_CPPv412memcached_st> structure. memcached_server_add() pushes a single TCP server into the memcached_st <#_CPPv412memcached_st> structure. This server will be placed at the end. Duplicate servers are allowed, so duplication is not checked. Executing this function with the MEMCACHED_BEHAVIOR_USE_UDP <# _CPPv4N20memcached_behavior_t26MEMCACHED_BEHAVIOR_USE_UDPE> behavior set will result in a MEMCACHED_INVALID_HOST_PROTOCOL <# _CPPv4N18memcached_return_t31MEMCACHED_INVALID_HOST_PROTOCOLE>. memcached_server_add_udp() pushes a single UDP server into the memcached_st <#_CPPv412memcached_st> structure. This server will be placed at the end. Duplicate servers are allowed, so duplication is not checked. Executing this function without setting the MEMCACHED_BEHAVIOR_USE_UDP <# _CPPv4N20memcached_behavior_t26MEMCACHED_BEHAVIOR_USE_UDPE> behavior will result in a MEMCACHED_INVALID_HOST_PROTOCOL <# _CPPv4N18memcached_return_t31MEMCACHED_INVALID_HOST_PROTOCOLE>. memcached_server_add_unix_socket() pushes a single UNIX socket into the memcached_st <#_CPPv412memcached_st> structure. This UNIX socket will be placed at the end. Duplicate servers are allowed, so duplication is not checked. The length of the filename must be one character less than MEMCACHED_MAX_HOST_LENGTH. memcached_server_push() pushes an array of memcached_server_st into the memcached_st <#_CPPv412memcached_st> structure. These servers will be placed at the end. Duplicate servers are allowed, so duplication is not checked. A copy is made of structure so the list provided (and any operations on the list) are not saved. memcached_server_by_key() allows you to provide a key and retrieve the server which would be used for assignment. memcached_server_get_last_disconnect() returns a pointer to the last server for which there was a connection problem. It does not mean this particular server is currently dead but if the library is reporting a server is, the returned server is a very good candidate. memcached_server_cursor() takes a memcached_st and loops through the list of hosts currently in the cursor calling the list of callback functions provided. You can optionally pass in a value via context which will be provided to each callback function. An error return from any callback will terminate the loop. memcached_server_cursor() is passed the original caller memcached_st <#_CPPv412memcached_st> in its current state. RETURN VALUE Varies, see particular functions. SEE ALSO memcached(1) libmemcached(3) memcached_server_st(3) memcached_strerror(3) 1.1 March 7, 2026 MEMCACHED_SERVER_COUNT(3)