Skip to main content
PyCon US is happening May 14th-22nd in Pittsburgh, PA USA.  Learn more

A low level cache library.

Project description

cachecore

A low-level caching library with multiple implementations.

Can be used as a stand-alone cacheing library or can be used to create higher level caching libraries.

Basics

Get, set, delete, and check for the existence of a key using the following.

>>> import cachecore
>>> cache = cachecore.LocalCache()
>>> cache.set('a', 1)
>>> cache.get('a')
1
>>> cache.exists('a')
True
>>> cache.delete('a')
True
>>> cache.exists('a')
False
>>> cache.get('a')
None

Complete API

    __getitem__(self, key: str) -> Any:

    __setitem__(self, key: str, value: Any):

    __delitem__(self, key: str):

    __contains__(self, key: str):

    __iter__(self):

    __len__(self):

    keys(self, pattern: str = None):

    get(self, key: str, default: Any = None) -> Any:

    set(self, key: str, value: Any, ttl: Optional[int] = None):

    add(self, key: str, value: Any, ttl: Optional[int] = None) -> bool:

    replace(self, key: str, value: Any, ttl: Optional[int] = KEEP_TTL) -> bool:

    delete(self, key: str) -> bool:

    pop(self, key: str, default: Any = None):

    exists(self, key: str) -> bool:

    get_many(self, keys: Iterable[str], default: Any = None) -> Iterable[Any]:

    set_many(self, mapping: Iterable[tuple[str, Any]], ttl: Optional[int] = None):

    delete_many(self, keys: Iterable[str]) -> Iterable[bool]:

    get_ttl(self, key: str, default: int = 0) -> Optional[int]:

    set_ttl(self, key: str, ttl: Optional[int] = None) -> bool:

    incr(self, key, delta=1) -> int:

    decr(self, key, delta=1) -> int:

    clear(self):

Cache Implementations

  • Redis
  • Memcached
  • File System
  • Local Memory
  • Dummy

Supported by

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