Меня интересует кеш памяти Chrome против кеша диска? Я использую webpack, плагин common chunks и генерирую все свои файлы с помощью chunkhash.
Чем память отличается от дискового кеша. Когда я перезагружаю свою страницу, некоторые файлы загружаются из кеша памяти, а некоторые из кеша диска (bundle.js и image.jpg из кеша памяти и css из кеша диска). Иногда бывает иначе. Можем ли мы это контролировать, выбирать, что откуда загружается? Кэш памяти кажется быстрее, чем кеш диска.
google-chrome
caching
webpack
Игорь-Вук
источник
источник
Ответы:
Как сказали их имена:
«Кэш памяти» хранит и загружает ресурсы в память (RAM) и из нее. Так что это намного быстрее, но непостоянно. Контент доступен, пока вы не закроете браузер.
«Дисковый кэш» постоянен. Кэшированные ресурсы хранятся и загружаются на диск и с диска.
Простой тест: откройте Chrome Developper Tools / Network. Перезагрузите страницу несколько раз. Столбец таблицы «Размер» сообщит вам, что некоторые файлы загружаются «из кеша памяти». Теперь закройте браузер, снова откройте Developper Tools / Network и снова загрузите эту страницу. Все кешированные файлы теперь загружаются «из дискового кеша», потому что ваш кеш памяти пуст.
источник
Chrome реализует кеши на многих уровнях абстракции. В основе лежит кеш HTTP (браузер) - бэкэнд для других механизмов кеширования. Обычно кеши можно разделить на:
HTTP-кеш
Каждый запрос, сделанный по сети, проксируется HTTP Cache в соответствии с RFC . При первом запросе кеш перезаписывается. Ресурсы привязаны к исходному URL.
Кэш Service Worker
Для корректной обработки сбоев сетевого подключения вы можете использовать Service Workers . Кеши и кеш-хранилище снова будут взяты с диска.
Мигающий кэш
Blink использует Http Cache в качестве бэкэнда в двух режимах создания - в памяти и простом (файловая система). Какой из них используется, зависит от установленного глобального лимита для кешей, сколько памяти они могут занять. Также наибольшую долю получает текущий кеш рендерера. Кешируются шрифты, изображения и скрипты. Если использование глобальной памяти достигает определенного порогового значения, используется серверная часть файловой системы.
Принудительное использование кеша памяти
Если вы хотите, чтобы ваши файлы обслуживались с помощью механизма переопределения памяти по умолчанию, вы можете реализовать свой собственный Service Worker. Используя File Api, ресурсы можно читать и сохранять в объект в памяти. Тогда переопределение события выборки подавит чтение сети и файла с контентом, обслуживаемым этим глобальным объектом.
источник