Amazon
ElastiCache allows users to set up, run, and scale popular
open-source Redis and Memcached compatible in-memory data stores as a fully
managed cloud service. Build data-intensive apps or boost the performance of existing databases by retrieving data from high throughput and low
latency in-memory data stores. Amazon ElastiCache is a popular choice for
real-time, sub-millisecond use cases like Caching, Session Stores,
Leaderboards, Geospatial Services, and Real-Time Analytics.
In our services, some of the information inside the database is not required to retrieve frequently from there. In such cases, we use ElastiCache in order to reduce the load from the database especially RDS.
In order to save some login information, notification alert, and some other critical data, we used DynamoDB instead of ElastiCache due to low cost and data are more persistent as compared with ElastiCache.
Amazon ElastiCache is being used by our product's infrastructure. We are using store data in AWS ElastiCache Redis to which our product needs quick access, e.g., session data so that our product performs more efficiently.
Amazon ElastiCache is a great tool to use when you need to cache data in your application to access it really fast and also want that to be fully managed, cost-efficient, and highly available in the production environment along with monitoring capabilities. It should not be used as a permanent database solution as Redis or Memcached are not alternatives for that. If the load is really less than choosing this might cost you more. Using it when you only want to pay when you run it would be better.
Amazon Elasticache is better than Amazon Elasticsearch and Amazon SQS as the former is good for dumping a lot of data for searching purposes later on and the latter is good for maintaining a message bus whereas Amazon ElastiCache purely works as a caching data store to provide faster data access. AWS DynamoDB is a good alternative if you're looking for a serverless solution as in Amazon ElastiCache, we get to see instances while in AWS DynamoDB, we can simply access the data without the need of bringing up a server.
The engineering and data science teams at my organization used Redis-flavored ElastiCache to cache recommendations and other personalization data that changes infrequently and is expensive to compute. Redis is great, but we don't want to manage it. It has been easy for us to scale reads with replicas and scale writes with shards.
Amazon ElastiCache is a great managed Redis or Memcached service. ElastiCache with the Redis engine is great for caching expensive responses or queries. It is great if you need a distributed mutex. It is great as a message broker. If you need Redis but don't have the resources to manage it yourself, consider ElastiCache. It may not be economical for very large scale installations, however.
We use ElastiCache as a general purpose cache layer in its Memcached compatible mode. This is in our backend stack and used to store anything which needs to be shared between multiple hosts. Primarily, this is database query result sets but does include a number of other items too.
Doesn't quite have all the same rich feature set in some places. Some of the more advanced setups may not be able to be replicated on ElastiCache, so if you need to do anything in that area you may need to rethink the architecture or run your own nodes instead.
It is an extremely easy way to have a caching service added to your infrastructure. As it supports Redis and Memcached compatibility, it means it is very widely supported too and you don't have to do anything special to use ElastiCache. If you are already a Memcached user you can more than likely use ElastiCache as a drop-in replacement. However, for some of the more advanced setups, you may still need to run your own Redis/Memcached clusters.