What is Caching?
In computing, a cache is a high-speed data storage layer which stores a subset of data, typically transient in nature, so that future requests for that data are served up faster than is possible by accessing the data’s primary storage location. Caching allows you to efficiently reuse previously retrieved or computed data.
How does Caching work?
The data in a cache is generally stored in fast access hardware such as RAM (Random-access memory) and may also be used in correlation with a software component. A cache's primary purpose is to increase data retrieval performance by reducing the need to access the underlying slower storage layer.
Trading off capacity for speed, a cache typically stores a subset of data transiently, in contrast to databases whose data is usually complete and durable.
Caching Overview
Layer | Client-Side | DNS | Web | App | Database |
Use Case | Accelerate retrieval of web content from websites (browser or device) |
Domain to IP Resolution | Accelerate retrieval of web content from web/app servers. Manage Web Sessions (server side) | Accelerate application performance and data access | Reduce latency associated with database query requests |
Technologies | HTTP Cache Headers, Browsers | DNS Servers | HTTP Cache Headers, CDNs, Reverse Proxies, Web Accelerators, Key/Value Stores | Key/Value data stores, Local caches | Database buffers, Key/Value data stores |
Solutions | Browser Specific | Amazon Route 53 | Amazon CloudFront, ElastiCache for Redis, ElastiCache for Memcached, Partner Solutions | Application Frameworks, ElastiCache for Redis, ElastiCache for Memcached, Partner Solutions | ElastiCache for Redis, ElastiCache for Memcached |
Caching with Amazon ElastiCache
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. Learn how you can implement an effective caching strategy with this technical whitepaper on in-memory caching.