Free YouTube views likes and subscribers? Easily!
Get Free YouTube Subscribers, Views and Likes

What are Distributed CACHES and how do they manage DATA CONSISTENCY?

Follow
Gaurav Sen

Caching in distributed systems is an important aspect for designing scalable systems. We first discuss what is a cache and why we use it. We then talk about what are the key features of a cache in a distributed system.

The cache management policies of LRU and Sliding Window are mentioned here. For high performance, the cache eviction policy must be chosen carefully. To keep data consistent and memory footprint low, we must choose a writethrough or writeback consistency policy.

Cache management is important because of its relation to cache hit ratios and performance. We talk about various scenarios in a distributed environment.

System Design Video Course:
https://interviewready.io

00:00 Who should watch this video?
00:18 What is a cache?
02:14 Why not store everything in a cache?
03:00 Cache Policies
04:49 Cache Evictions and Thrashing
05:52 Consistency Problems
06:32 Local Caches
07:49 Global Caches
08:56 Where should you place a cache?
09:35 Cache Write Policies
11:38 Hybrid Write Policy?
13:10 Thank you!

A complete course on how systems are designed. Along with video lectures, the course has architecture diagrams, capacity planning, API contracts, and evaluation tests.

System Design Playlist:    • System Design Playlist  

Code: https://github.com/codingparrot/Low...

You can follow me on:
Facebook:   / gkcs0  
Quora: https://www.quora.com/profile/Gaurav...
LinkedIn:   / gauravsen56b6a941  
Twitter:   / gkcs_  

References:
Guava Cache https://github.com/google/guava/wiki/...
LRU http://www.mathcs.emory.edu/~cheung/C...
https://en.wikipedia.org/wiki/Cache_r...
Implementation of Sliding Window Cache policies (Caffeine) https://github.com/benmanes/caffeine
http://highscalability.com/blog/2016/...
https://docs.microsoft.com/enus/prev...)

#SystemDesign #Caching #DistributedSystems

posted by forvitnukn