Quantcast
Channel: Active questions tagged redis+java - Stack Overflow
Viewing all articles
Browse latest Browse all 2204

Using Hazelcast / Redis for DB backed cache requirement

$
0
0

I am developing a distributed Java application that needs to check a list of blacklist userids on each request.

If request fails on some eligibility rules, system should add userid ( a parameter of request ) to blacklist.

I am trying to find a proper caching solution for blacklist implementation. My requirements are;

  • querying blacklist should be very fast
  • blacklist persistence technology should be scalable
  • all blacklist data should be persisted on a RDBMS also for fail over / reloading purposes.

They are two possible solutions;

Option 1: I can use redis for storing blacklist data. Whenever a request fails on eligibility rules I can add userid to redis cache easly. - advantages: extremely fast query, easy to implement- disadvantages: trusting on redis persistency although it works, it is a cache solution by design not a persistency layer.

Option 2: I can use redis for storing blacklist data meanwhile I can maintain db tables on RDBMS for blacklist. Whenever a request fails on eligibility rules I can add userid to redis cache and rdbms table together. - advantages: extremely fast query, ability(possibility) to reload redis cache from db - disadvantages: there is a consistency issue between redis and db table.

Option 3: I can use hazelcast as hibernate L2 cache and when I add any user id to blacklist it is both added to cache and db.

I have questions about option 3

  • Does hazelcast L2 cache is suitable for preserving such a list of blacklisted users?
  • Does hibernate manages consistency issue between cache and db?
  • When application restarted, how L2 cache is reloaded?

and a last question- Do you have any other suggestion for such a use-case?

Edit:

  • There will be 100m records in blacklist and I have a couple smilar blacklist.

  • my read performance is important. I need to query existence of a key within blacklist ~100ms


Viewing all articles
Browse latest Browse all 2204

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>