pymemcache.client.hash module

class pymemcache.client.hash.HashClient(servers, hasher=<class 'pymemcache.client.rendezvous.RendezvousHash'>, serde=None, serializer=None, deserializer=None, connect_timeout=None, timeout=None, no_delay=False, socket_module=<module 'socket' from '/home/docs/.pyenv/versions/3.7.9/lib/python3.7/socket.py'>, socket_keepalive=None, key_prefix=b'', max_pool_size=None, pool_idle_timeout=0, lock_generator=None, retry_attempts=2, retry_timeout=1, dead_timeout=60, use_pooling=False, ignore_exc=False, allow_unicode_keys=False, default_noreply=True, encoding='ascii', tls_context=None)

Bases: object

A client for communicating with a cluster of memcached servers

__init__(servers, hasher=<class 'pymemcache.client.rendezvous.RendezvousHash'>, serde=None, serializer=None, deserializer=None, connect_timeout=None, timeout=None, no_delay=False, socket_module=<module 'socket' from '/home/docs/.pyenv/versions/3.7.9/lib/python3.7/socket.py'>, socket_keepalive=None, key_prefix=b'', max_pool_size=None, pool_idle_timeout=0, lock_generator=None, retry_attempts=2, retry_timeout=1, dead_timeout=60, use_pooling=False, ignore_exc=False, allow_unicode_keys=False, default_noreply=True, encoding='ascii', tls_context=None)

Constructor.

Parameters
  • servers – list() of tuple(hostname, port) or string containing a UNIX socket path.

  • hasher – optional class three functions get_node, add_node, and remove_node defaults to Rendezvous (HRW) hash.

  • use_pooling – use py:class:.PooledClient as the default underlying class. max_pool_size and lock_generator can be used with this. default: False

  • retry_attempts – Amount of times a client should be tried before it is marked dead and removed from the pool.

  • retry_timeout (float) – Time in seconds that should pass between retry attempts.

  • dead_timeout (float) – Time in seconds before attempting to add a node back in the pool.

  • encoding – optional str, controls data encoding (defaults to ‘ascii’).

Further arguments are interpreted as for Client constructor.

add(key, *args, **kwargs)
add_server(server, port=None) None
append(key, *args, **kwargs)
cas(key, *args, **kwargs)
client_class

Client class used to create new clients

alias of Client

close()
decr(key, *args, **kwargs)
delete(key, *args, **kwargs)
delete_many(keys, *args, **kwargs) bool
delete_multi(keys, *args, **kwargs) bool
disconnect_all()
flush_all(*args, **kwargs) None
gat(key, default=None, **kwargs)
gats(key, default=None, **kwargs)
get(key, default=None, **kwargs)
get_many(keys, gets=False, *args, **kwargs)
get_multi(keys, gets=False, *args, **kwargs)
gets(key, *args, **kwargs)
gets_many(keys, *args, **kwargs)
gets_multi(keys, *args, **kwargs)
incr(key, *args, **kwargs)
prepend(key, *args, **kwargs)
quit() None
remove_server(server, port=None) None
replace(key, *args, **kwargs)
set(key, *args, **kwargs)
set_many(values, *args, **kwargs)
set_multi(values, *args, **kwargs)
touch(key, *args, **kwargs)