Выбор ответа Middle Кеширование обновлено
Инвалидация кеша
Вопрос
Пользователь изменил аватар, но в списке комментариев ещё час видит старый. Какое решение правильнее?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Менять URL картинки при изменении (версия или хеш в URL), чтобы старый ключ кеша не использовался. Ключ кеша это URL.
Варианты ответа
- Отключить кеш картинок для аватаров, чтобы каждый показ шёл за свежим файлом с сервера
- Сбрасывать весь кеш картинок при каждом запуске приложения и при каждом его возврате из фона
- Менять URL картинки при изменении (версия или хеш в URL), чтобы старый ключ кеша не использовалсяправильный ответ
- Уменьшить размер кеша, чтобы старые аватары быстрее вытеснялись новыми по LRU при прокрутке
Разбор
Ключ кеша это URL. Если новое содержимое лежит по тому же адресу, клиент честно показывает старое до истечения срока. Версионированные URL (avatar.jpg?v=17 или хеш в имени) решают задачу без потери кеша. Отключение или регулярная очистка кеша бьют по скорости и трафику. Размер кеша не влияет на актуальность.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.