We have a cluster configuration for Redis used as cache.
Now due to the normal pattern of write to master and read from slave (with other databases), we are trying to do the same thing with Redis cluster.
After some investigation we found that none of the Redis clients (in java) like redisson, jedis and Spring Data Redis support this.
We seem to have found some workaround for it but it seems ugly and now I am thinking if it is worth it?
Here is my use case
- Approx highest QPS: 1000
- Payload size: huge 1 MB max (after compression)
- Cluster size 3 master each with 2 slaves(pretty high spec machines)
- Cringe part: the actual network bandwidth to this cluster is Max 1GB (1 GB separately for intra-cluster talk)
With that in mind I have following questions:
- Will it (reading from slave) help me in any way?
- Are there any pit holes I should avoid (any special server side config)?
- Is the narrow path going to be a problem?
- Is there a standard way (library/client) for doing this correctly
Any help (blogs, case study, suggestions) is greatly appreciated.