Катим в прод | Александр Калыргин
22.02 · ред.
🚀 Методы прогрева кэша
Востребованность на собесе: Периодически ⭐️ Из прошлых постов мы узнали что такое кэш, на каких уровнях он реализовывается, а также способы обновления и удаления данных в нем. Но как данные попадают в это временное хранилище? 🤔 Представьте ситуацию: вы архитектурно рассчитали нагрузку на приложение исходя из обработки части запросов в кэше, но при релизе данного приложения получаете резкую нагрузку на БД. Все стабильно и аномалий по трафику, но из-за чего это? Одной из проблем может быть отсутствие актуальных данных в кэше из-за чего при первом запросе приложение начнёт загружать данные напрямую из базы. Это долго и затратно. Прогрев кэша — это подготовка данных заранее, чтобы пользователи получали их из временного хранилища. Основные методы прогрева кэша 1️⃣ Заранее подготовить популярные данные Анализируем, какие запросы чаще всего делают пользователи. Заранее выгружаем эти данные в кэш при запуске приложения или по расписанию. 2️⃣ Прогрев через скрипты или задачи Создаём отдельный скрипт, который выполняет запросы к базе данных/API и сохраняет результаты в кэш. Релизим приложение ночью (когда меньше трафика) и плавно прогреваем, чтобы к основному трафику данные были загружены в кэш. 3️⃣ Пользовательский прогрев Данный пример из ситуации, которую обсуждали в начале. Позволяем кэшу наполняться динамически, по мере запросов пользователей. Чтобы улучшить результат, можно настроить механизм опережающей загрузки. Например, пользователь открыл страницу категории. На основе этого действия можно сразу прогреть кэш карточек товаров в этой категории. 4️⃣ Комбинированный подход Используем гибрид из заранее подготовленных данных и пользовательских запросов. Такой подход часто обеспечивает лучший баланс. Ставь ❤️ если узнал новое @katimvprod
еще контент в этом сообществе
еще контент в этом соообществе
Катим в прод | Александр Калыргин
22.02 · ред.
войдите, чтобы увидеть
и подписаться на интересных профи