Question: Where Do Writes Happen in ElastiCache Redis?


In ElastiCache Redis, writes happen on the primary node. ElastiCache for Redis follows a primary-replica architecture, with one primary node and zero or more replica nodes. The primary node is responsible for receiving all write operations, while replica nodes store read-only copies of the data.

When a write operation occurs, the primary node processes the request and replicates the changes to the connected replica nodes asynchronously. This ensures that data remains consistent across all nodes in the cluster.

Here's an example of a simple write operation using Python with the redis-py library:

import redis # Connect to your ElastiCache Redis primary endpoint r = redis.Redis(host='your-primary-endpoint', port=6379, db=0) # Perform a write operation (SET key value) r.set('example_key', 'example_value')

To improve write performance, you can enable Multi-AZ with automatic failover. This allows ElastiCache to automatically detect failures and promote a replica node to the primary role, ensuring high availability and minimizing downtime.

Keep in mind that write-heavy workloads can affect the primary node's performance, so it's essential to monitor performance metrics and scale resources as needed.

Was this content helpful?

White Paper

Free System Design on AWS E-Book

Download this early release of O'Reilly's latest cloud infrastructure e-book: System Design on AWS.

Free System Design on AWS E-Book
Start building today

Dragonfly is fully compatible with the Redis ecosystem and requires no code changes to implement.