Re[2]: Локальный кеш, использование подгнивших данных, обнов
От: Артём Австралия жж
Дата: 19.01.25 22:40
Оценка:
Здравствуйте, DiPaolo, Вы писали:

DP>Не зная твоих данных и их особенностей сложно что-то предлагать


DP>Что касается общеизвестных методов, то они легко гуглятся. Вот, к примеру, https://www.designgurus.io/blog/cache-invalidation-strategies

Да. Есть TTL и Stale-while-revalidate. Тема про Stale-while-revalidate.

DP>Единственное, я бы в твоем конкретно кейсе делал запрос с некоторой регулярностью (если это позволительно и данные не зависят от многих параметров) к бэку в отдельном треде, а не только когда данные понадобятся. Это сгладит длительность запроса для пользователя. В противном случае будет "то густо, то пусто".


Особенности такие: Web UI загружается медленно, крутит колёсиком ибо типа большая система. Потом он все запросы держит в памяти этой страницы, чтоб работать быстро. Там, когда данные записываются, есть логика чтоб кэши в памяти сбрасывались, это всё давно отлажено и вылизано. Там, когда данные изменены с другого компа — от пользователя ожидается, что он перезагрузит страницу, чтоб подхватить новые данные.

Новая фича — это кеш за пределами инстанса страницы, т.е. Web UI загружается мгновенно на старых закешированных данных.

Стратегия Stale While Revalidate: https://web.dev/articles/offline-cookbook#stale-while-revalidate

Прокси ревалидирует данные и записывает в прокси-кэш, но логика аппликухи ещё не допилена, чтобы обновить после revalidate.

Артикли, которые гуглятся у меня, все копи-паста с перечислением стратегий performance, freshness, staleWhileRevalidate но без рецепта по моему случаю с staleWhileRevalidate.
Отредактировано 19.01.2025 22:48 Артём . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.