Skip to main content

Cachetools Utilities

Project description

CacheToolsUtils

Classes to add key prefix and stats to cachetools classes and use redis and memcached as storage backends, and other cache-related utils.

Status Tests Coverage Issues Python Version Badges License

Module Contents

For our purpose, a cache is a key-value store, aka a dictionary, possibly with some constraints on keys (type, size) and values (size, serialization). This module provides new caches, wrappers and other utilities suitable to use with cachetools.

Cache classes

  • RedisCache allows to see a Redis server as a python cache by wrapping a redis.Redis instance.
  • MemCached does the same for a Memcached server. The utility class JsonSerde is a convenient JSON serializer-deserializer class for Memcached.
  • DictCache a very simple dict cache.

Other wrappers to extend cache capabilities

  • PrefixedCache, PrefixedMemCached and PrefixedRedisCache add a prefix to distinguish sources on a shared cache.
  • StatsCache, StatsMemCached and StatsRedisCache add a hits() method to report the cache hit rate.
  • LockedCache use a (thread) lock to control cache accesses.
  • TwoLevelCache allows to combine two caches.
  • DebugCache to trace cache calls using logging.

Cache utilities

  • cached decorator: a cachetools replacement which allows to test if a function result is in cache, and to delete such an entry.
  • cacheFunctions and cacheMethods: add caching to functions or methods.

License

This code is Public Domain.

All software has bug, this is software, hence… Beware that you may lose your hairs or your friends because of it. If you like it, feel free to send a postcard to the author.

More

See the documentation, sources and issues on GitHub.

See packages on PyPI.

Project details


Download files

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

Source Distribution

cachetoolsutils-8.6.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

CacheToolsUtils-8.6-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file cachetoolsutils-8.6.tar.gz.

File metadata

  • Download URL: cachetoolsutils-8.6.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for cachetoolsutils-8.6.tar.gz
Algorithm Hash digest
SHA256 b7f40dbc76c73d36e10f54fdde404a271d87aaa36f3977944fbbb29137fd7dbb
MD5 23831c6d18867c1418b2d3c9f56b9702
BLAKE2b-256 09e8946df46be02323673f40e3dd5828ccab080633ab0c9e450ebf52c643033b

See more details on using hashes here.

File details

Details for the file CacheToolsUtils-8.6-py3-none-any.whl.

File metadata

File hashes

Hashes for CacheToolsUtils-8.6-py3-none-any.whl
Algorithm Hash digest
SHA256 7cb20e9e4aa94097e209b5220e431a5d52f298f480af4074edb5346c4762459a
MD5 c272fe47dd1bd525e0f8a24f52e6f9e4
BLAKE2b-256 c024023b2c42153552be0a8dec24ce95de873e35bf1d68747226f228db6735d1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page