Linear Scaling
Redis Enterprise has been benchmarked to demonstrate true linear scaling—going from 10M ops/sec with 6 AWS EC2 instances to 30M ops/sec with 18 AWS EC2 instances. If a Redis server reaches the point where it has more reads/writes than it can sustain, there are multiple ways to scale your database:
- Scaling shards and nodes
- Scaling proxies
- True linear scalability with open source cluster API
- Scaling ‘read’ with read-replica using the ‘replica-of’ feature
Scaling shards and nodes
The re-sharding mechanism of Redis Enterprise is based on Redis replication. Whenever a shard needs to be scaled out, the Redis Enterprise cluster launches another Redis instance and replicates to it half of the hash slots of the original shard. Once the new shard is populated, traffic is sent to both shards by the proxy in a manner completely transparent to the app.
There are two ways to scale database shards:
- Scaling up by adding shards to your database without adding nodes to your cluster. This scenario is useful when there is enough un-utilized capacity in the cluster: