pylibmc - Python client for memcached

pylibmc is a client in Python for memcached. It is a wrapper around TangentOrg‘s libmemcached library.

The interface is intentionally made as close to python-memcached as possible, so that applications can drop-in replace it.

Example usage

Create a connection and configure it:

>>> import pylibmc
>>> mc = pylibmc.Client(["127.0.0.1"], binary=True)
>>> mc.behaviors = {"tcp_nodelay": True, "ketama": True}

Basic operation:

>>> mc.set("some_key", "Some value")
True
>>> value = mc.get("some_key")
>>> value
'Some value'
>>> mc.set("another_key", 3)
True
>>> mc.delete("another_key")
True
>>> mc.set("key", "1")  # str or int is fine
True

Atomic increments and decrements:

>>> mc.incr("key")
2L
>>> mc.decr("key")
1L

Batch operation:

>>> mc.get_multi(["key", "another_key"])
{'key': '1'}
>>> mc.set_multi({"cats": ["on acid", "furry"], "dogs": True})
[]
>>> mc.get_multi(["cats", "dogs"])
{'cats': ['on acid', 'furry'], 'dogs': True}
>>> mc.delete_multi(["cats", "dogs", "nonextant"])
False