Amazon ElastiCache is a web service that makes it easy to deploy, operate, and scale an in-memory data store or cache in the cloud. The service improves the performance of web applications by allowing you to retrieve information from fast, managed, in-memory data stores, instead of relying entirely on slower disk-based databases. Amazon ElastiCache supports two open-source in-memory engines:
- Redis - a fast, open source, in-memory data store and cache. Amazon ElastiCache for Redis is a Redis-compatible in-memory service that delivers the ease-of-use and power of Redis along with the availability, reliability and performance suitable for the most demanding applications. Both single-node and up to 15-shard clusters are available, enabling scalability to up to 3.55 TiB of in-memory data. ElastiCache for Redis is fully managed, scalable, and secure - making it an ideal candidate to power high-performance use cases such as Web, Mobile Apps, Gaming, Ad-Tech, and IoT.
- Memcached - a widely adopted memory object caching system. ElastiCache is protocol compliant with Memcached, so popular tools that you use today with existing Memcached environments will work seamlessly with the service.
Amazon ElastiCache automatically detects and replaces failed nodes, reducing the overhead associated with self-managed infrastructures and provides a resilient system that mitigates the risk of overloaded databases, which slow website and application load times. Through integration with Amazon CloudWatch, Amazon ElastiCache provides enhanced visibility into key performance metrics associated with your Redis or Memcached nodes.
Using Amazon ElastiCache, you can add an in-memory layer to your infrastructure in a matter of minutes by using the AWS Management Console.
Amazon ElastiCache can be used to significantly improve latency and throughput for various application workloads (such as social networking, gaming, AdTech, media sharing and Q&A portals) or compute-intensive workloads (such as a recommendation engine). When used as a cache, ElastiCache can improve application performance by storing critical pieces of data in memory for low-latency access. This information may include the results of I/O-intensive database queries or the results of computationally-intensive calculations. Applications that require a fast in-memory data structure server, a highly available cache or a message broker will find the Redis engine most useful.
For more Use Cases, please see ElastiCache for Redis page.