Кэш (Cache)

Кэш — это временное хранилище для данных посещенного сайта.

В кэше сохраняются:

·        Изображения — логотипы, картинки, фоны и т. д.;

·        HTML;

·        CSS;

·        JavaScript.

Зачем нужен кэш?

Сохранение данных веб-страниц на компьютере, вместо их повторной загрузки, помогает экономить время открытия веб-сайтов в браузере. Также используется меньше данных, что особенно полезно для мобильных пользователей с ограниченными тарифными планами. Ваш телефон не должен загружать каждое изображение и веб-страницу несколько раз, поскольку он может восстановить данные из кэша. Но сохранение данных происходит не только в браузере и для веб-страниц.

Как работает кэш?

Когда вы открываете веб-страницу, браузер кэширует эти данные: загружает картинки, текст на ваш компьютер. Когда вы заходите на сайт снова, эти данные уже находятся на вашем компьютере или устройстве.  При повторном заходе на сайт, если веб-страница не изменилась, браузер загружает файлы из кэша, а не заново скачивает из Интернета.

Типы использования кэша

Сервер кэширования: выделенный сетевой сервер или служба, действующая как сервер или веб-сервер, который сохраняет веб-страницы или другой интернет-контент локально. Кэш-сервер иногда называют прокси-кэшем.

Дисковый кэш: содержит недавно прочитанные данные и, возможно, смежные области данных, которые, вероятно, будут доступны в ближайшее время. Некоторые диски кэшируют данные в зависимости от того, как часто они читаются. Часто читаемые блоки хранения называются горячими блоками и автоматически отправляются в кэш.

Кэш-память: кэш-память процессора часто связана непосредственно с процессором и используется для кэширования часто используемых инструкций. Кэш-память оперативки намного быстрее, чем кэш-память на диске, но кэш-память процессора намного быстрее, чем кэш-память оперативки, потому что она находится так близко к процессору.

Флэш-кэш: временное хранение данных на микросхемах флэш-памяти — часто с использованием твердотельных накопителей — для выполнения запросов данных быстрее, чем это было бы возможно, если бы кэш находился на традиционном жестком диске или его части. 

Постоянный кэш: учитывается фактическая емкость хранилища, где данные не теряются в случае перезагрузки или сбоя системы. Резервная батарея используется для защиты данных или данные сбрасываются в динамической оперативной памяти с резервным питанием от батареи в качестве дополнительной защиты от потери данных.

Алгоритмы кэша

Алгоритм кэширования — это подробный список инструкций, который указывает, какие элементы следует отбрасывать в кэш.

Наименее часто используемые (Least Frequently Used — LFU). Данный алгоритм основывается на отслеживании частоты доступа к записи. При использовании алгоритма кэширования LFU запись с наименьшим счетом удаляется первой. Этот метод используется не так часто, так как он не учитывает элемент, который изначально имел высокую скорость доступа, а затем долго не использовался.

Давно неиспользованные (Least Recently UsedLRU): этот алгоритм кэширования хранит недавно использованные элементы в верхней части кэша. При каждом обращении к новому элементу LRU помещает его в верхнюю часть кэша. Когда лимит кеша будет достигнут, элементы, к которым давно не обращались, будут удалены, начиная с нижней части кэша. Это может быть дорогостоящим алгоритмом, поскольку он должен содержать «биты возраста», которые точно показывают, когда к элементу обращались. Кроме того, когда алгоритм кэширования LRU удаляет элемент, «возрастной бит» изменяется для всех других элементов.

Последние использованные (Most Recently UsedMRU): этот алгоритм кэширования, в отличии от предыдущего, удаляет самые последние использованные элементы в первую очередь. LRU ориентируется на время:  здесь чем старше элемент, тем он меньше используется и удаляется в первую очередь. MRU — наоборот, чем старше элемент, тем чаще к нему обращаются, и в первую очередь здесь удаляются последние использованные элементы, так как они меньше всего использовались. Таким образом, LRU удаляет самые неиспользуемые элементы — самые старые, а в MRU удаляет самые новые.

Кэш адаптивной замены (Adaptive Replacement CacheARC): этот алгоритм использует оба вышеуказанных, чтобы наилучшим способом использовать доступный кэш.

Использование при тестировании

Проблемы с Кэшем

Несмотря на то, что кэш позволяет сохранять время и данные, он может быть искаженным и иногда приносить больше вреда, чем пользы.

Вирус может скачать себя в кэш браузера, заражая весь ваш компьютер.

Файлы могут сильно устареть, если кэш не очищается автоматически, а это означает, что просматриваемые страницы могут быть неактуальными или даже вызывать ошибки. 

Один из частых вопросов разработчика на баг это: “А ты кэш почистил?”. Не забывайте очищать кэш перед воспроизведением бага. 

Кэш может занимать гигабайты данных. Учитывая, что компьютеры и телефоны имеют очень ограниченный размер хранилища. Кэш всех видов должен очищаться по необходимости.

Очистка кэша

Удалить кэш в браузере можно через опцию «Очистить историю».

Одна из самых известных и используемых программ – Ccleaner. Программа очищает операционную систему от неиспользуемых временных файлов, кэш интернет-браузеров со всей историей просмотров страниц.

Метки
#Тестирование ПО (3)Android (1)Cache (1)Cookie (1)courses (1)HR (1)iOS (2)istqb (1)ISTQB FL (1)java (1)Jedi Point (10)JSON (1)kaizen (2)pairwise (1)QA (14)QualityLab (1)REST API (1)selenium (1)SOAPUI (1)SOAP UI (1)softskills (1)softwaretesting (1)SQA Days-25 (1)sql (5)TestSuites (1)usability (2)web (1)XML (1)Анна Палей (1)БАГИ (1)Исследовательское тестирование (2)Истории поинт (8)Команда разработки (1)Курс тестирования для начинающих (1)Кэш (1)Лаборатория Качества (1)Мнемоники (1)Мнемоники в тестировании (1)Наталья Руколь (1)Нина Агеева (4)ПОИНТ (39)ПРомо-вебинар (1)Подготовка к istqb (1)Роман Буданов (3)Скриншот (3)Таблица решений (1)Тестирование (16)Тестирование ПО (3)Тест менеджмент (1)Тренер (11)Туры (1)автоматизация (2)алгоритмы (1)баг (1)безопасность (1)бесплатный вебинар (1)введение в тестирование (1)граничные значения (1)декомпозиция (1)домашки (1)займемсяпоинтом (1)игры (1)идеальный мир (1)интернет (1)истории выпускников (8)как надо тестировать (2)комбинаторика (1)конференция (1)котик (1)курс для начинающих тестировщиков онлайн (1)лайфхак (1)минутка юмора (1)мобилки (3)мобильное тестирование (4)настройка мозгов (1)начинающий тестировщик (7)негативное тестирование (2)обучение (1)обучение тестированию (8)организация тестирования (1)персонажи (1)планирование (1)постановка мозгов (2)работа над ошибками (1)рабочий процесс (1)радиоСаня (1)режим разработчика (3)резюме (1)сертификация ISTQB FL (1)скринкаст (1)сопроводительное письмо (1)с чего начать (1)тайм-менеджмент (1)тест дизайн (1)тестировани (1)тестирование usability (2)тестирование безопасности (1)тестирование веб (2)тестирование игр (3)тестирование мобильных приложений (1)тестировщик (5)улучшайзинг (1)ученик (2)фреймворки (1)чеклист (3)чит лист (1)что должен делать тестировщик (1)ятренерпоинт (1)
С 3.02 по 6.04, ОНЛАЙН Зарегистрироваться