Кэширование: зачем, когда и где мы его используем? | Основы системного дизайна
Techdose AI & System Design
0:00 / 0:00
Кэширование: зачем, когда и где мы его используем? | Основы системного дизайна
715 просмотров · 6 дней назад
Techdose AI & System Design
3,11 тыс. подписчиков
715 просмотров · 6 дней назад
Зачем нам кэширование в распределенной системе? Что именно происходит, когда запрос попадает в кэш, а не в базу данных? И если кэширование настолько эффективно, почему бы просто не кэшировать всё подряд?
В этом видео мы разберем концепцию кэширования с самых основ и поймем его роль в проектировании системы.
Вместо того чтобы начинать с Redis или деталей реализации, мы сначала разберемся, зачем существует кэширование, когда оно имеет смысл, где его можно разместить и какие компромиссы оно влечет за собой.
💡 В этом видео вы узнаете:
🔹 Почему базы данных становятся узкими местами при больших объемах чтения
🔹 Как кэширование снижает задержку и нагрузку на базу данных
🔹 Что такое кэш
🔹 Попадания в кэш, промахи в кэш и коэффициент попаданий в кэш
🔹 Когда кэширование целесообразно
🔹 Как кэширование помогает при часто используемых данных и дорогостоящих операциях
🔹 Как кэширование может помочь защитить системы от горячих клавиш и пиковых нагрузок
🔹 Как кэширование может снизить географическую задержку
🔹 Что означает многоуровневое кэширование
🔹 Где кэши могут располагаться в системе
🔹 Кэширование на стороне браузера и клиента
🔹 Кэширование CDN и на периферии сети
🔹 Кэширование на уровне приложения/локальное кэширование
🔹 Распределенное кэширование
🔹 Почему мы не можем просто кэшировать все
🔹 Стоимость емкости кэша и памяти
🔹 Устаревшие данные и согласованность Проблемы
🔹 Аннулирование кэша
🔹 Требования к актуальности данных
🔹 Промахи кэша и «кэш-тамп»
🔹 Компромисс между производительностью и сложностью
⏱️ ВРЕМЕННЫЕ МЕТКИ
00:00 — Введение
00:32 — Зачем нужно кэширование
05:38 — Что такое кэширование
10:10 — Когда следует использовать кэширование?
16:53 — Где следует использовать кэширование?
18:23 — Программа обучения в реальном времени
18:39 — Почему мы не кэшируем всё?
22:11 — Программа обучения в реальном времени
💡 Кэширование — это не просто ускорение работы. Это компромисс в проектировании системы между производительностью, масштабируемостью, актуальностью, согласованностью и сложностью.
📚 Это видео является частью моей серии «Основы проектирования систем», где мы строим концепции проектирования систем с нуля, прежде чем переходить к реализации и продвинутым шаблонам.
🎯 Если вы изучаете системное проектирование, распределенные системы, бэкенд-разработку или архитектуру программного обеспечения, это видео даст вам базовую модель мышления, необходимую перед тем, как углубиться в технологии и шаблоны кэширования.
🔎 Темы обсуждения:
Кэширование, Проектирование систем, Основы проектирования систем, Распределенные системы, Кэш, Попадание в кэш, Промах кэша, CDN, Распределенный кэш, Горячие клавиши, Аннулирование кэша, Каскад кэша, Масштабируемость, Масштабируемость баз данных, Задержка, Высокая доступность
#ПроектированиеСистем #Кэширование #РаспределенныеСистемы #АрхитектураПрограммногоОбразования #БэкендИнженерия
----------------------------------------------------------------------------------------------------------------------------------------------------------------
🟣 ПРИСОЕДИНЯЙТЕСЬ к нашему 𝐋𝐈𝐕𝐄 𝐢𝐧𝐭𝐞𝐫𝐯𝐢𝐞𝐰 𝐭𝐫𝐚𝐢𝐧𝐢𝐧𝐠 Запрос через WhatsApp: +91 8918633037
🟣 Закажите все наши товары: https://techdose.co.in/
🟢 Techdose-100: https://docs.google.com/spreadsheets/...
🟢 Канал в Telegram ( 𝐏𝐃𝐅 𝐨𝐟 𝐯𝐢𝐝𝐞𝐨): t.me/codewithTECHDOSE
🔵 LinkedIn: / surya-pratap-kahar-47bb01168
🔴 INSTAGRAM: / surya.pratap.k
---------------------------------------------------------------------------------------------------------------------------------------------------------------
Объяснение Cache Stampede с нуля: • Cache Stampede Explained from Scratch | Wh...