README
Last updated
Last updated
• • • •
The modern Python3.8+ out-of-the-box reactive cache solution
Installation is as simple as:
Dory's configuration is quite simple. On your project initialization just call the setup function as follows
Bloats
responds to the need of having a simpler approach on designing reactive cache on your system. They make cache configuration and management easy.
For example, let's pretend that we have a model called Product
which can be either serialized or edited. So, to improve the Product
serialization performance we cache the Product
serialization view (GET /product/).
Now everything works faster and as expected, but we did not contemplate that since the Product
can be edited (PUT /product/), we could have cached an outdated version of the Product
, so we need a way to force the cache to refresh itself. This is where Bloats come in handy!
Instead of caching the view with a generic cache decorator, decouple the cache configuration on a Bloat
And now, when a Product
is edited, you can force the view to refresh the cache using the Bloat
as a middle-man.
Now your cache will always be in sync and it'll be configured in a cleaner way! 🔥
Dory simplifies several cache utilities with an out-of-the-box interface. For example, a decorator to cache views comfortably:
Bloats v2
The v2 of the Bloats
will implement the method .set()
, capable not only to deprecate the current Bloat
version, but to fill it it again. The design is still a WIP
.
Support more cache engines
Suggestions and contributions are extremely welcome! ❤️ Just open an issue or a PR, and I'll respond as soon as I can.
View the current documentation
The will permit the Bloats to expire themselves when a post_save
signal from the Bloat's Django designated model signal is sent.
Bloats 🐡 (See )
Cache utils (See )
Django signals (See )