Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support Redis client side caching #699

Open
gdarmont opened this issue Apr 21, 2023 · 0 comments
Open

Support Redis client side caching #699

gdarmont opened this issue Apr 21, 2023 · 0 comments
Assignees

Comments

@gdarmont
Copy link
Contributor

Is your feature request related to a problem? Please describe.
Flags and properties are usually way more retrieved than modified. Using a distributed cache like Redis helps avoiding querying the persistent store, but on a high workload application, it still triggers a lots -sometimes tens of thousands- of GET queries to only have the same value each time.

Describe the solution you'd like
Redis 6 offers a way to implement client side caching : see https://redis.io/docs/manual/client-side-caching/
This would helps FF4J to not trigger remote call to Redis server for every flag or property check, while having a near-realtime invalidation of the client side cache entries.

Describe alternatives you've considered
One current solution is to chain FF4jCacheProxy, i.e. have a FF4jCacheProxy using InMemoryCacheManager over a FF4jCacheProxy using FF4jCacheManagerRedis. But in that case, even with a low TTL on the InMemoryCacheManager, we lose the fact that a new value is seen ASAP.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants