Considering Redis' clustering is strictly master-slave and doesn't support multi-master, it would be nice to be able to read and write from different Redis instances.
A very basic example: reading from the local Redis slave while writing to an external Redis master. Compared to the current situation (reading from and writing to the same Redis instance, which has to be the master because you can't write to slaves), this would result in data being returned faster from the local slave and the load on the remote master would be lowered.
Some potential failover situations:
- Master up, slave(s) down: Read from the Master instead of the slaves
- Master up, one of many slaves down: Read from the node specified in the config as failover for this one, if not configured read from other slave, if all slaves are down read from master.
- Master down, slave(s) up: Enter a StackOverflow-esque read-only mode, 503 all requests to the yet-to-be-written Write API.