saeideh
saeideh

Reputation: 171

Using ElastiCache with RDS for improving read/write performance

I am using RDS on amazon with a MySQL interface. My application runs on EC2 nodes and read/update the database, but the number of reads and writes are too many and that reduces performance. Most of the time the number of connections exceed the allowed limit. I was considering using Elasticache to improve performance, however I did not find resources on web, how to configure database to use this effectively. Is this the best way to improve my read/write performance? Any suggestions?

Upvotes: 6

Views: 10103

Answers (3)

webstrap
webstrap

Reputation: 1024

You can use elasticache as a second level cache for your rds db. If you use java you can use the hibernate-memcached lib. But you still need to configure how and what to cache in the second level cache depending on your data.

Additionally you could use read replica at RDS least to get split the read traffic.

(What instance type are you using, you saw that they have different i/o capacities?)

Upvotes: 0

Dina Kaiser
Dina Kaiser

Reputation: 476

Performance is related to the type and structure of the queries used, so there might be some room for optimization. Maybe you can provide more details about the exact queries used. However, you could tackle this from a different angle - if you had an auto scaling capability, you could simply scale up your database to additional machines if needed, so you could accommodate an infinite number of connections even without any performance optimization (of course if you optimize it will improve performance). This is not possible on RDS, but there are at least two other cloud DB providers running on EC2 that I'm aware of which offer auto scaling - www.xeround.com and www.enterprisedb.com.

Upvotes: 0

alexlod
alexlod

Reputation: 1365

You can't just "turn on" memcache. You need to write code that interacts with memcache, such that your database query results are cached in memcache. Take a look at this users guide -- I think it will give you a good idea for how memcache is used:

http://www.memcachier.com/documentation/memcache-user-guide/

Upvotes: 6

Related Questions