@a2d7cc

Можете ли обьяснить кэширование картинок браузером?

Вопрос о том, как браузер тратит свои мощности на отрисовывание и что подразумевается под кэшем в плане рендера картинок:
1. Самый простой случай внешняя ссылка на файл, как для рендера браузера происходит обработка такого файла? Первый раз он его скачивает, на второй раз уже файл хранится где то в кэше. Если указаны размеры, то браузер резервирует под неё место, а дальше видеокарта отрисовывает данные взятые из файла?
2. Если картинка вставлена в виде data uri, она не кешэруется, закодирована сразу в строке, будь то в стилях или в разметке самой. В чем тут принципиальная разница между рендером данных из файла закэшированного и вставленного сразу в виде data uri

А теперь насчет svg картинок:
3, Просто ссылкой на внешний файл
4. Вставлена через data uri
5. Сразу в разметку
Через призму svg как теперь это влияет на кэширование и использвание ресурсов компьютера
6. Через спрайт. Тут отдельно хочу уточнить в случае, если вставить в саму разметку спрайт или закачать отдельным файлом, но тут снова возращаюсь к самому началу.

P.S Когда то читал про путь от запроса до конечного результата, какие у браузера под каждую задачу модули и т.д, но хотел бы сейчас уточнить по поводу картинок, потому что много способов использование. А я на самом деле не представляю работу процессора, видеокарты при отрисовке и обсчете визуальной состовляющей.
P.P.S Вопрос больше не про то, что чем больше закодировано и вставлено в файл, тем он более раздутый и чем больше ссылок на файлы, иконки, тем больше надо соединений сделать. А больше про сам рендер на экране из закэшированного файла image.png или закодированно датаурлом внутри, тоже самое к вариациям svg разметки.
P.P.S И про различные нюансы, я думаю есть какие то фишки для кэширования казалось бы того, что не кешируется.
  • Вопрос задан
  • 763 просмотра
Пригласить эксперта
Ответы на вопрос 1
Adamos
@Adamos
Отделяя мух от котлет, стоит говорить просто о запросах браузера.
В заголовках каждого ответа, как правило, указано, стоит ли его кэшировать и надолго ли.
Это относится и к картинкам, и к скриптам, и к стилям, и даже к самой странице.
Если кэш дозволен - браузер сохраняет на диске результат этого запроса и при втором аналогичном запросе никуда не тянется, считывая данные с диска.
Естественно, если картинка вставлена датаурлом, svg целиком вставлен в текст страницы или изображение рисуется скриптами прямо в браузере - никакой речи о кэше просто нет и быть не может.

P.S. А если вас интересует, какие оптимизации браузер применяет для ускорения рендеринга - для начала стоит хотя бы обозначить, о каком конкретно браузере речь. Они, внезапно, разные...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы