5
High Volume Consumer Mobile Application Using Redis on AWS Presentation to Tech Meetup George Nassef Chief Technology Officer

Replacing MySQL With REDIS For High Volume Processing by George Nassef

Embed Size (px)

Citation preview

Page 1: Replacing MySQL With REDIS For High Volume Processing by George Nassef

High Volume Consumer Mobile

Application Using Redis on AWSPresentation to Tech Meetup

George Nassef

Chief Technology Officer

Page 2: Replacing MySQL With REDIS For High Volume Processing by George Nassef

Previous Architecture Multiple MySQL Clusters on AWS Instances

Geo-Distributed For Low-Latency

Load-balanced RO MySQL Instances Using

Replication.

Cached Videos Using ElasticCache CDN.

MySQL Replication for Speed.

Page 3: Replacing MySQL With REDIS For High Volume Processing by George Nassef

Problems MySQL Replication is Cumbersome

Management of Multiple RO MySQL, No Fun.

Code Complexity and Management.

Cache Expiration and Object Permanence.

Scaling User-Authentication Special Case.

Page 4: Replacing MySQL With REDIS For High Volume Processing by George Nassef

Solution Migrated Heavy Hit Data to Redis

Setup Redis Clusters for Performance Fail-over.

Code simplification was dramatic.

Nearly All MySQL was able to be retired.

Kept MySQL Insert (1-time) for persistent data.

Kept keyed Redis entries for subsequent Reads.

Page 5: Replacing MySQL With REDIS For High Volume Processing by George Nassef

Benefits 150x performance improvement.

Able to reduce AWS footprint, save $$$$.

Switched to Spot Instances for Redis Slaves.

Saved more $$$$.

Faster Mobile Consumer Experience.

Able to geo-distribute worker servers for even better speed.

Smaller Code Footprint, faster development.