System Design - теория кэширования | Как кэшировать данные

  Рет қаралды 23,293

Vladimir Balun - Programming

Vladimir Balun - Programming

Күн бұрын

Курсы по программированию: clck.ru/37iG2b
Потренироваться проходить собеседования: it-interview.io
Присоединиться к моему сообществу: boosty.to/vladimir_balun
Консультации:
getmentor.dev/mentor/vladimir...
solvery.io/ru/mentor/vladimir...
Таймкоды:
00:00 - План занятия
01:03 - Что такое кэширование
03:18 - Основные термины кэширования
04:55 - Какие данные кэшировать
06:02 - Кэширование ошибок
07:13 - Как предотвратить cache miss attack
10:34 - Эффективность кэширования
12:56 - Внутреннее кэширование
14:41 - Внешнее кэширование
19:23 - Cache Aside
21:32 - Cache Through
23:16 - Cache Ahead
29:33 - Алгоритмы вытеснения данных из кэша
30:01 - Random алгоритм
30:23 - FIFO алгоритм
30:49 - LIFO алгоритм
31:16 - LRU алгоритм
32:06 - MRU алгоритм
32:29 - LFU алгоритм
37:11 - Алгоритм Белади (OPT)
38:13 - Second Chance алгоритм
39:56 - Clock алгоритм
40:40 - 2Q алгоритм
41:42 - SLRU алгоритм
42:49 - TLRU алгоритм
43:17 - LRU-k алгоритм
47:24 - Инвалидация данных в кэше
47:41 - Инвалидация по TTL
48:35 - Jitter
49:40 - Thundering herd problem
51:13 - Инвалидация по событию
52:41 - Версионирование кэша
56:11 - Тегирование кэша
1:03:37 - Многомерный кэш
1:05:46 - Курс по System Desing
VK: vladimir_balun_program...
Telegram: t.me/vladimir_balun_programming
Instagram: / vladimir_balun_program...
KZbin: / @vladimir_balun_progra...
YandexZen: zen.yandex.ru/id/623b6c964da9...
RuTube: rutube.ru/channel/25079714/
Кэширование. Алгоритмы кэширование. Кэширование в программировании. Кэширование данных. Прогрев кэша. Холодный кэш. Когда использовать кэширование. Как написать кэш для базы данных.
#айти #программирование #программист #systemdesign

Пікірлер: 34
@vladimir_balun_programming
@vladimir_balun_programming 6 ай бұрын
Используете ли вы в своих задачах кэширование, если да - то что именно вам приходит кэшировать?
@kl45gp
@kl45gp 12 күн бұрын
это лучшее видео на ютубе про кэш!!! спасибо!
@rustamahmadov3771
@rustamahmadov3771 5 ай бұрын
Добрый день Влад, желаю приятного отпуска) Ты в конце видео сказал что скинешь материалы, бесплатные ресурсы, где лучше подготовиться по систем дизайну. Спасибо большое)
@MrLotrus
@MrLotrus 6 ай бұрын
Спасибо! По работе с кэшированием мало работал. Поэтому было полезно и интересно хотя бы теорию послушать.
@vladimir_balun_programming
@vladimir_balun_programming 6 ай бұрын
Не за что!
@kismichel17
@kismichel17 6 ай бұрын
Кратко и информативно. Респект)
@vladimir_balun_programming
@vladimir_balun_programming 6 ай бұрын
Спасибо!
@denis.nikolaev
@denis.nikolaev 6 ай бұрын
Спасибо! Ты лучший! ❤
@blaze2671
@blaze2671 6 ай бұрын
Большое спасибо за видео! А будет ли такое же видео, но про брокеры сообщений? Было бы очень полезно
@vladimir_balun_programming
@vladimir_balun_programming 6 ай бұрын
Подумаю на счет этого)
@TheILOVEYOUXD
@TheILOVEYOUXD Ай бұрын
Безоговорочно лайк и подписка
@rokki_khazratov
@rokki_khazratov 6 ай бұрын
Спасибо огромное за большой урок
@vladimir_balun_programming
@vladimir_balun_programming 6 ай бұрын
Не за что!
@user-vn2nx1yq9e
@user-vn2nx1yq9e 6 ай бұрын
всё верно!@@vladimir_balun_programming
@TheAelyseev
@TheAelyseev Ай бұрын
Для Thundering Herd Problem. Еще можно так. Модуль кеша хранит два ключа - первый инвалидируется как нужно, например 30 sec, второй никогда или редко. Когда несколько процессов идут в кеш, а первого значения там уже нет, то только один начинает обновлять первый ключ, остальные получают второе значение. Когда первый закончит - он положит в кеш актуальное значение. Для примера со страницей Рональндо, какой-то небольшой процент не получит последние фото, но зато не за аффектит скорость работы сервисов.
@andrewkot5212
@andrewkot5212 6 ай бұрын
Объясните, откуда берется формула об среднем времени доступа к данным через три переменные?
@anastascat2770
@anastascat2770 6 ай бұрын
Уууф, чувствую, что будет жарко! Еще не глянул, но уже понимаю, что это час сплошного кайфа. Благодарю! И давай больше систем десигна
@vladimir_balun_programming
@vladimir_balun_programming 6 ай бұрын
Спасибо)
@user-se4gg9sk4b
@user-se4gg9sk4b 2 ай бұрын
Благодарю за материал! Это был максимально полезный стрим (хоть и смотрю его в записи)! У меня лишь небольшое замечание по поводу вычисления эффективности кеширования на 11-й минуте. Мне кажется тут берётся формула так, чтобы спустя N запросов к приложению, суммарное время отклика от приложения с кешированием было как можно меньше чем к такому же приложению без кеширования. Правильно ли я понял? Например мы 10 раз ходим в приложение: Приложение без кеширования это 10 * 100 = 1000 милисекунд (всегда идём в бд) Приложение с кешированием (при CacheMissRate = 0,8) это 0,8 * 10 * 100 + 10 * 20 = 1000 милисекунд (800 мс на БД и всегда перед этим идём в кеш - 200 мс) То есть при сравнении получается что при CacheMissRate = 0,8 ничего не меняется а при увеличении этого показателя, он будет не очень эфективен. Правильно ли я улавливаю мысль?
@Zarin1989
@Zarin1989 6 ай бұрын
Поток - это сколько человек в группе? И второй вопрос. По уровням стандартный и ВИП. Домашки на ВИПе проверяются преподавателем, а на стандартном получается никто не проверяет?
@it_cpp54
@it_cpp54 6 ай бұрын
Подумал что про кэширование на процессоре.
@nouchance
@nouchance 6 ай бұрын
Spasibo Balun!
@eugenefedoryachenko8793
@eugenefedoryachenko8793 6 ай бұрын
Это пересказ статьи "[По полочкам] Кэширование" с хабра?)
@vladimir_balun_programming
@vladimir_balun_programming 6 ай бұрын
Описано ли там много алгоритмов вытеснения данных (Second Chance, Clock, ...), Тегирование кэша, Версионирование кэша, Многомерный кэш и многое другое, что есть в видео? Я вижу, что нет
@stepanmikhailiuk4571
@stepanmikhailiuk4571 6 ай бұрын
Если даже это пересказ статьи, то ничего плохого в этом нет. Автору спасибо
@eugenefedoryachenko8793
@eugenefedoryachenko8793 6 ай бұрын
@@stepanmikhailiuk4571 В этом и правда ничего такого нет, если изначально об этом сказать и дать ссылку например на источник) А так, Владимир поменял местами некоторые блоки из статьи. И у меня это вызвало больше вопросов чем ответов) Ошибки в структурировании привели меня к первоисточнику. Где я получил все ответы на вопросы.
@stepanmikhailiuk4571
@stepanmikhailiuk4571 6 ай бұрын
@@eugenefedoryachenko8793 Понял вас, спасибо за ответ. Тоже теперь прочту!
@somethingname9038
@somethingname9038 6 ай бұрын
100 кэшхит / 10 кэшмис = 10% попадания по твоим словам
@konstantintolstikhin5531
@konstantintolstikhin5531 6 ай бұрын
Ага, тоже обратил на это внимание. Правильно должно быть (cache hists) / ((cache hists) + (cache misses)). Тогда в данном случае получим 0.9 или 90%
@bnidia
@bnidia 6 ай бұрын
Думаю у меня глюк или в видео дети кричат на заднем фоне
@user-ty4re1cz7d
@user-ty4re1cz7d 6 ай бұрын
Не глюк, все норм. Ничего страшного в этом нет, что бывает что-то на фоне. Ты когда видос смотришь у тебя сейчас идеальная тишина?)) Когда глотаешь знания ничего не мешает, т.к. Автор видео красавчик!))
@RisDeep
@RisDeep 2 ай бұрын
Слишком растянутая информация. Как стрим наверное нормально. Для видео лучше по 15 минут по конкретной теме
@borland7033
@borland7033 6 ай бұрын
Отличное видео как всегда)Кстати у Криштиану Рональду 612 млн подписчиков)
@vladimir_balun_programming
@vladimir_balun_programming 6 ай бұрын
Буду знать)
100❤️
00:20
Nonomen ノノメン
Рет қаралды 66 МЛН
ИРИНА КАЙРАТОВНА - АЙДАХАР (БЕКА) [MV]
02:51
ГОСТ ENTERTAINMENT
Рет қаралды 1 МЛН
🍕Пиццерия FNAF в реальной жизни #shorts
00:41
Антон Сергеев, «Go под капотом»
36:37
Kolesa Group
Рет қаралды 89 М.
Меняла стек в IT 7 раз - делюсь опытом!
34:49
IT-Собеседница
Рет қаралды 21 М.
Вводная лекция про бэкенд - ШБР 2024
1:53:45
Основы системного дизайна за 30 минут
28:46
Eugene Suleimanov
Рет қаралды 25 М.
Теория кэширования - System Design
1:12:31
balun.courses
Рет қаралды 14 М.
100❤️
00:20
Nonomen ノノメン
Рет қаралды 66 МЛН