Skip to main content

guillotina cache implementation using redis + lru in-memory cache

Project description

https://travis-ci.org/guillotinaweb/guillotina_rediscache.svg?branch=master

guillotina_rediscache implements redis into guillotina with an additional in-memory layer cache.

In order to coordinate invalidating the in-memory cache, guillotina_rediscache utilizes the pub/sub feature redis provides.

Configuration

app_settings for this:

{
  "databases": {
    "db": {
      ...
      "cache_strategy": "redis"
      ...
    }
  },
  "redis": {
      'host': 'localhost',
      'port': 6379,
      'ttl': 3600,
      'memory_cache_size': 1000,
      'pool': {
          'minsize': 5,
          'maxsize': 100
      }
  }
}

Run measures

Using guillotina run command:

./bin/g run --script=measures/serialize.py -c measures/config.yaml

With profiling:

./bin/g run --script=measures/serialize.py -c measures/config.yaml --line-profiler --line-profiler-matcher="*serialize*"

1.0.14 (2018-01-10)

  • Only run invalidation task if we have keys to invalidate [vangheem]

1.0.13 (2017-12-15)

  • Improve request performance [vangheem]

  • Change the way we’re using the redis pool so it reuses connections [vangheem]

1.0.12 (2017-11-30)

  • Missing await statement for self.get_redis() [vangheem]

1.0.11 (2017-11-08)

  • Handle CancelledError [vangheem]

1.0.10 (2017-11-06)

  • upgrade for guillotina 2.0.0 [vangheem]

1.0.9 (2017-10-23)

  • Fix handling connection objects and releasing back to pool [vangheem]

1.0.8 (2017-10-23)

  • Fix use of pool [vangheem]

1.0.7 (2017-10-23)

  • Use pickle instead of json from load/dumps because it is much faster [vangheem]

1.0.6 (2017-10-19)

  • Use ujson [vangheem]

1.0.5 (2017-10-02)

  • Track all keys needing invalidation and do invalidation in an async task so the request can finish faster. [vangheem]

1.0.4 (2017-05-29)

  • Test fixes [vangheem]

1.0.3 (2017-05-26)

  • Fix delete not properly invalidating cache [vangheem]

1.0.2 (2017-05-15)

  • Fix channel publishing invalidations [vangheem]

1.0.1 (2017-05-15)

  • Fix release

1.0.0 (2017-05-15)

  • initial release

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

guillotina_rediscache-1.0.14.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

guillotina_rediscache-1.0.14-py3-none-any.whl (15.1 kB view details)

Uploaded Python 3

File details

Details for the file guillotina_rediscache-1.0.14.tar.gz.

File metadata

File hashes

Hashes for guillotina_rediscache-1.0.14.tar.gz
Algorithm Hash digest
SHA256 f4f4741d27d5b5f97c00a732c88bbdc4ef23dfa084a5da76be0393b6815c362e
MD5 b6f4ceab0341e4e51765bf5fe07c9b63
BLAKE2b-256 4e63f935d3023c608d4212e29f097549359ea7b40cd76d6452d5679d0ef227e6

See more details on using hashes here.

File details

Details for the file guillotina_rediscache-1.0.14-py3-none-any.whl.

File metadata

File hashes

Hashes for guillotina_rediscache-1.0.14-py3-none-any.whl
Algorithm Hash digest
SHA256 b90def1f6eb4b37727398aae0a6f18319de7b8edf7548b127f5a6d720ce3e304
MD5 6a08653a1867bc2dd0981ec7a435a56b
BLAKE2b-256 ca0c6f3f96f233e46efbe0f27d6ed1f20c2cf2344204bef91716ea1a31716161

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