MEMCACHED_SERVER_COUNT(3)
β¨ NAME β¨
memcached_server_count β the libmemcached Documentation situation, bestie π (this is one of the libmemcached-awesome pages, and yes we're gonna go through literally every function on it)
π SYNOPSIS π
#include <libmemcached/memcached.h>
Compile and link with -lmemcached
uint32_t memcached_server_count(memcached_st *ptr)
Parameters
ptrβ pointer to initializedmemcached_ststruct
Returns
number of configured servers
memcached_return_t memcached_server_add(memcached_st *ptr, const char *hostname, in_port_t port)
Parameters
ptrβ pointer to initializedmemcached_ststructhostnameβ hostname or IP address of the TCP server to addportβ port of the TCP server
Returns
memcached_return_t indicating success
memcached_return_t memcached_server_add_udp(memcached_st *ptr, const char *hostname, in_port_t port)
Parameters
ptrβ pointer to initializedmemcached_ststructhostnameβ hostname or IP address of the UDP server to addportβ port of the UDP server
Returns
memcached_return_t indicating success
memcached_return_t memcached_server_add_unix_socket(memcached_st *ptr, const char *socket)
Parameters
ptrβ pointer to initializedmemcached_ststructsocketβ path to the UNIX socket of the server to add
Returns
memcached_return_t indicating success
memcached_return_t memcached_server_push(memcached_st *ptr, const memcached_server_st *list)
Parameters
ptrβ pointer to initializedmemcached_ststructlistβ pre-configured list of servers to push
Returns
memcached_return_t indicating success
const memcached_instance_st *memcached_server_by_key(memcached_st *ptr, const char *key, size_t key_length, memcached_return_t *error)
Parameters
ptrβ pointer to initializedmemcached_ststructkeyβ key to hash and lookup a serverkey_lengthβ length of key without any terminating zeroerrorβ pointer tomemcached_return_tindicating success
Returns
the server instance to be used for storing/retrieving key
const memcached_instance_st *memcached_server_get_last_disconnect(const memcached_st *ptr)
Parameters
ptrβ pointer to initializedmemcached_ststruct
Returns
the instance of the last server for which there was a connection problem
memcached_return_t memcached_server_cursor(const memcached_st *ptr, const memcached_server_fn *callback, void *context, uint32_t number_of_callbacks)
Parameters
ptrβ pointer to initializedmemcached_ststructcallbackβ list ofmemcached_server_fnto be called for each server instancecontextβ pointer to user supplied context for the callbacknumber_of_callbacksβ number of callbacks supplied
Returns
memcached_return_t indicating success
typedef memcached_return_t (*memcached_server_fn)(const memcached_st *ptr, const memcached_instance_st *server, void *context)
Param ptr
pointer to the memcached_st struct
Param server
pointer to memcached_instance_st
Param context
pointer to user supplied context
Returns
memcached_return_t indicating success
π¦ DESCRIPTION π¦
okok so here's the tea β libmemcached is out here doing operations on a list of hosts, and the order of those hosts is literally what decides routing to keys. There are functions handed to you for adding keys to memcached_st structures. And if you wanna manipulate lists of servers, go look at memcached_server_st.
memcached_server_count() hands you a count of the current number of servers being used by a memcached_st structure. simple. iconic. π
memcached_server_add() pushes a single TCP server into the memcached_st structure. That server gets placed at the end. Duplicate servers are allowed, so like, duplication is not checked β she does not care. But heads up bestie: executing this function with the MEMCACHED_BEHAVIOR_USE_UDP behavior set will result in a MEMCACHED_INVALID_HOST_PROTOCOL. π
memcached_server_add_udp() pushes a single UDP server into the memcached_st structure. Also placed at the end. Duplicates allowed, duplication not checked. And the flip side of the vibe: executing this function without setting the MEMCACHED_BEHAVIOR_USE_UDP behavior will result in a MEMCACHED_INVALID_HOST_PROTOCOL. π«
memcached_server_add_unix_socket() pushes a single UNIX socket into the memcached_st structure. This UNIX socket is placed at the end. Duplicates allowed, duplication not checked. The length of the filename must be one character less than MEMCACHED_MAX_HOST_LENGTH. β οΈ not a suggestion, that's the rule.
memcached_server_push() pushes an array of memcached_server_st into the memcached_st structure. These servers get placed at the end. Duplicates allowed, duplication not checked. A copy is made of the structure so the list you provided (and any operations on that list) are not saved. so go ahead and do whatever with your list afterwards, she's not watching π§
memcached_server_by_key() lets you provide a key and retrieve the server which would be used for assignment. cute little peek behind the curtain β¨
memcached_server_get_last_disconnect() returns a pointer to the last server for which there was a connection problem. Important nuance, don't misread it: it does not mean this particular server is currently dead. But if the library is reporting a server is dead, the returned server is a very good candidate. like, prime suspect energy π
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. Also: memcached_server_cursor() is passed the original caller memcached_st in its current state.
π RETURN VALUE π
Varies, see particular functions. (yes that's really it, she said read the individual functions, slay π)
π₯ SEE ALSO π₯
and that's the whole page, bestie!! this was libmemcached-awesome version 1.1, dated Jul 24, 2025 β go forth and configure your servers, no cap ππ¦β¨
π¦ where this page comes from
- fedora 43: libmemcached-awesome-devel 1.1.4-7.fc43 Β· BSD-3-Clause
- fedora 43: libmemcached-awesome-devel 1.1.4-7.fc43 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms