Skip to main content
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': 209715200,
      '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*"

2.1.3 (2019-06-18)

  • Restrict version to guillotina < 5 [vangheem]

2.1.2 (2019-06-12)

  • Use expire param with setting redis cache value on file data manager [vangheem]

2.1.1 (2019-01-18)

  • When applying invalidations, make sure to not allow another starting transaction to conflict with asyncio invalidation task [vangheem]

  • Fix endpoint @redis-clear-cache [masipcat]

2.1.0 (2018-11-20)

  • Upgrade to Guillotina >= 4.3 [bloodbare]

2.0.4 (2018-10-06)

  • Do not fail memory cache if not configured [vangheem]

2.0.3 (2018-07-20)

  • Remove old guillotina compatibility for py 3.7 [bloodbare]

2.0.2 (2018-06-18)

  • Improve size calculation [jordic]

2.0.1 (2018-06-15)

  • Change default cache size to 209715200 [vangheem]

2.0.0 (2018-06-15)

  • Cache based on memory size instead of total number of keys [jordic]

1.3.4 (2018-04-03)

  • Fix fixture [vangheem]

1.3.3 (2018-04-03)

  • Upgrade testing for guillotina 3.0 [vangheem]

1.3.2 (2018-03-26)

  • Use after commit hook to update data for file manager implementation [vangheem]

1.3.1 (2018-03-19)

  • Fix redis file manager finish method [vangheem]

1.3.0 (2018-03-19)

  • Provide redis file manager [vangheem]

1.2.0 (2018-03-14)

  • Upgrade to work with guillotina 2.4.x [vangheem]

1.1.6 (2018-03-01)

  • Handle errors while canceling task init task [vangheem]

1.1.5 (2018-03-01)

  • Handle errors while canceling task [vangheem]

1.1.4 (2018-02-15)

  • Fix cache stats endpoint [vangheem]

1.1.3 (2018-01-22)

  • Be able to disable deleting group of cache keys together with cluster_mode option. [vangheem]

1.1.2 (2018-01-17)

  • Fix using redis.delete when keys are of length 0 [vangheem]

1.1.1 (2018-01-17)

  • batch all cache deletes into one request [vangheem]

1.1.0 (2018-01-12)

  • Push cache updates to redis subscriber. This should improve cache hits dramatically [vangheem]

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

Release files for guillotina-rediscache 2.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for guillotina-rediscache 2.1.3
File Size Uploaded
guillotina_rediscache-2.1.3.tar.gz 19.8 kB Details

Release files / guillotina_rediscache-2.1.3.tar.gz

Download URL guillotina_rediscache-2.1.3.tar.gz
Size 19.8 kB
Tags Source
SHA-256 checksum
How to use checksums
930e34fe5fa301632ab7d571ca0e77f2861672f245e440b282aca8205665a394
BLAKE2b-256 checksum
How to use checksums
827bfdab6859eb672364ff191a90d4ffcab50e4eb3e87c51057b7b94d100dfc3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.6

Release history Release notifications | RSS feed

This release

2.1.3 This release

1 release file

2.1.2

1 release file

2.1.1

2 release files

2.1.0

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.14

2 release files

1.0.13

2 release files

1.0.12

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

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