Load data on demand into a cache from a data store, while keeping the consistency between the data held in the cache and in the data store.
When to use this pattern?
A cache doesn’t provide native read-through, and write-through operations
Resource demand is unpredictable
When NOT to use this pattern?
When the cached data set is static
For caching session state information in a web application hosted in a web farm
Considerations
Time To Live (TTL)
Evicting data
Priming the cache
Consistency
Local (in-memory) caching