whitfin / cachex

A powerful caching library for Elixir with support for transactions, fallbacks and expirations
https://hexdocs.pm/cachex/
MIT License
1.6k stars 103 forks source link

Create an abstraction over cluster state and routing #345

Closed whitfin closed 2 months ago

whitfin commented 7 months ago

To ease migration to other routing mechanisms, the idea is to create a state in the cache which can be a generic routing function which operates on the nodes state. If we use this for jump hashing, in theory swapping it out later with libring is pretty simple.

It also opens the doors to the future where we can actually allow it to be configurable, although I'm not promising that will ever happen :)