OrchardCMS / OrchardCore

Orchard Core is an open-source modular and multi-tenant application framework built with ASP.NET Core, and a content management system (CMS) built on top of that framework.
https://orchardcore.net
BSD 3-Clause "New" or "Revised" License
7.32k stars 2.36k forks source link

Create a hybrid in-memory distributed cache provider #1871

Open sebastienros opened 6 years ago

sebastienros commented 6 years ago

Something like https://github.com/jdehlin/CacheSleeve that can store locally, while also being distributed (2-tier). With automatic invalidation as we do with the message bus in O1.

Also would be useful to set collections with memory limits on each so it doesn't go in memory if it's taking too much space, and a way to see statistics about it. It also means counting the bytes but it's trivial as everything is serializable.

sfmskywalker commented 6 years ago

Might CacheManager.NET be useful as the implementation for this? Or should we build it ourselves?