Skip to main content

pylibmc is a Python wrapper around the accompanying C Python extension _pylibmc, which is a wrapper around libmemcached from TangentOrg.

You have to install libmemcached separately, and have your compiler and linker find the include files and libraries.

With libmemcached installed and this package set up, the following basic usage example should work:

>>> import pylibmc
>>> mc = pylibmc.Client(["127.0.0.1:11211"])
>>> mc.set("foo", "Hello world!")
True
>>> mc.get("foo")
'Hello world!'

The API is pretty much python-memcached. Some parts of libmemcached aren’t exposed yet. I think.

Behaviors

libmemcached has ways of telling it how to behave. You’ll have to refer to its documentation on what the different behaviors do.

To change behaviors, quite simply:

>>> mc.behaviors["hash"] = "fnv1a_32"

For a list of the defined behavior key names, see what the keys of a client is. For example:

>>> mc.behaviors.keys()  # doctest: +NORMALIZE_WHITESPACE
['hash', 'connect timeout', 'cache lookups', 'buffer requests',
 'verify key', 'support cas', 'poll timeout', 'no block', 'tcp nodelay',
 'distribution', 'sort hosts']

The hash and distribution keys are mapped by the Python module to constant integer values used by libmemcached. See pylibmc.hashers and pylibmc.distributions.

Comparison to other libraries

Why use pylibmc? Because it’s fast.

See this (a bit old) speed comparison.

IRC

#sendapatch on chat.freenode.net.

Change Log

New in version 0.6

  • Added compatibility with libmemcached 0.26, WRT error return codes.

  • Added flush_all and disconnect_all methods.

  • Now using the latest pickling protocol.

New in version 0.5

  • Fixed lots of memory leaks, and added support for libmemcached 0.23.

  • Also made the code tighter in terms of compiler pedantics.

New in version 0.4

  • Renamed the C module to _pylibmc, and added lots of libmemcached constants to it, as well as implemented behaviors.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pylibmc-0.6.1.tar.gz (12.7 kB view details)

Uploaded Source

File details

Details for the file pylibmc-0.6.1.tar.gz.

File metadata

  • Download URL: pylibmc-0.6.1.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pylibmc-0.6.1.tar.gz
Algorithm Hash digest
SHA256 3236ae50c66b91d957e333ff6f11f4f46214f8ed0563e79da4858c25fa0023a6
MD5 e1b82eb7dff446a034f174c93b6c9ac2
BLAKE2b-256 ee6042dd02324f327b3feb387ef334809eb1ca00bdb922b23c6d21f8f66309cd

See more details on using hashes here.

Release history Release notifications | RSS feed

1.6.3

23 files

1.6.2

19 files

1.6.1

5 files

1.6.0

5 files

1.5.2

1 file

1.5.1

1 file

1.5.0

1 file

1.4.3

1 file

1.4.2

1 file

1.4.1

1 file

1.4.0

1 file

1.3.0

1 file

1.2.3

1 file

1.2.2

1 file

1.2.1

1 file

1.2.0

1 file

1.1.1

1 file

1.1

1 file

1.0

1 file

0.9.2

1 file

0.9.1

1 file

0.9

1 file

0.8.2

1 file

0.8.1

1 file

0.8

1 file

0.7.4

1 file

0.7.3

1 file

0.7.2

1 file

0.7.1

1 file

0.7

1 file

This release

0.6.1 This release

1 file

0.6

1 file

0.5.5

1 file

0.5.4

1 file

0.5.3

1 file

0.5.2

1 file

0.5.1

1 file

0.5

1 file

0.4

1 file

0.3

1 file

0.2

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page