

Benchmarking Redis on AWS ElastiCache - bradleybuda
http://blog.meldium.com/home/2013/9/13/benchmarking-redis-on-aws-elasticache

======
rspeer
It is important to realize that these numbers are very, very low. Amazon's
architecture has always been particularly terrible at running Redis, and the
fact that they gave it a brand name has not changed that.

antirez's "How fast is Redis?" page
([http://redis.io/topics/benchmarks](http://redis.io/topics/benchmarks)) draws
some attention to the fact that Redis gets much slower when virtualized. He
mentions that a state-of-the-art VMware hypervisor will cut Redis's
performance by a factor of two.

EC2's performance is considerably worse than a state-of-the-art hypervisor.

For comparison, I just ran the same benchmark the article describes on the
desktop PC I'm currently using to post this. It cost me $800, last year, and
that includes the video card. It gets an average of 881,670 OPS, which is over
ten times faster than an m2-2xlarge machine in this benchmark.

------
tegansnyder
I recently switched some of our eccomerce caching from a 3 Node ElastiCache
Memcache cluster to a m1.large Redis ElastiCache instance for caching and a
m1.small for session storage in Redis. So far the performance with Magento
I've seen a 30-40% increase.

~~~
gtaylor
30-40% increase in what? Latency? Throughput?

I'd be curious to see how using ElastiCache Redis as a session store compares
to DynamoDB (on latency, throughput, and price).

~~~
tegansnyder
App server response time (New Relic measurement). I haven't looked into
DynamoDB.

~~~
gtaylor
Just to be 100% clear, increase = worse in this context, correct?

------
legutierr
One thing that would be interesting to see is how Redis on ElastiCache stands
up against other cloud-based Redis offerings that are available in AWS, like
redis-cloud.com. Is anyone here using one of these services?

~~~
aioprisan
probably around the same, although the winning features for those would rather
be the auto-scaling and sharding features, instant failover etc
([http://redis-cloud.com/redis/redis-comparison](http://redis-
cloud.com/redis/redis-comparison)).

~~~
ceejayoz
I'm always a little dubious about any service whose comparison page is "we do
everything! others do nothing!" like that. Anyone got any direct experience
with them?

~~~
rspeer
Yep! My company evaluated their service, briefly. We asked how they perform on
redis-benchmark. They provided no numbers and said "We have a way to stop
users who generate benchmark traffic on our service."

We tried running the actual Redis-using process of our application on their
free tier. The server went down.

Would not recommend.

~~~
garantiadata
Dear rspeer - we regret learning of your negative experience with our service.
We do find it somewhat puzzling that you never reached out to us for
assistance after your instance had crashed - we have thousands of active users
and each incident is dealt with utmost professionalism regardless the plan
type. If you wish, we invite you try our service again and contact us at
support@garantiadata.com with any question or issue.

~~~
rspeer
Sorry for the lack of follow-up, but there's a reason we were just evaluating.
Nothing was forcing us to use redis-cloud in particular.

In fact, nothing was forcing us to use any sort of Redis in the cloud, which
is good, because my conclusion is that _nobody_ has a satisfactory solution
for it. It's not just your service. It's not just Amazon either. Nobody has
figured out Redis in the cloud.

Redis is designed to be a high-performance, in-memory data store. All "Redis
in the cloud" offerings turn it into a low-performance data store that feels
more like a database, and that defeats the point.

If you figure it out, let me know... but I'll want to be able to run redis-
benchmark.

------
aioprisan
tl;dr Don't use the t1-micro or m1-small instances for anything serving
interactive traffic, m1-large and m2-xlarge are much better than c1-xlarge

~~~
aioprisan
and the winners are m1-medium, m1-large, and m2-xlarge

