#html #изображения #base64
Делаю галерею. Хранить картинки на сервере мне проще в base64. Есть ли разница при отображении картинки в html между указанием в атрибуте src пути до картинки или подстановкой в этот тег строки base64 с точки зрения производительности или еще чего нибудь?
Ответы
Ответ 1
хранить на сервере, это в базе? если у вас более менее большие изображения, то сохраняйте как статичные файлы. зачем каждый раз гонять туда сюда контент файлов через коннекшен базы? она и так большую часть нагрузки на себя берет. если вы используете base64, то изображения не кешируются, а отправляются вместе с HTML. Т.е юзер будет ждать пока загрузится 5 мегабайт страницы и отрендерится. Вместо того, чтобы отобразить контент и стили, а все остальное параллельно догружать (причем браузеры умеют перед полной загрузкой изображения показывать превьюшку) можно использовать серверный GZIP, в много раз уменьшая размер получаемого контента. статичные файлы в целях оптимизации принято отдавать на CDN. он выгружает контент с более близкого сервера, ускоряя загрузку. также ставят NGINX (только либо перед апачем), который быстро работает с стат. файлами. в base64 этот вариант не работаетОтвет 2
в случае указания пути к картинке, браузеру нужно будет сделать ещё один запрос и скачать картинку. Это как бы минус, но современные браузеры умеют делать это очень хорошо (если только им не мешать) и скачивать в паралель. Также картику легко закешировать. В том случае, если же картинка будет внутри html страницы, кеширование картинки невозможно, сама html страница стенет больше. Но если картинка мелкая (10на10 пикселей), то это может быть оправданно. Так как Вы делаете галерею, то для основных картинок (больших) лучше использовать классический подход. Это будет проще, быстрее (с точки зрения разработки и отображения) и более гибко. Мелкие картинки (стрелочки всякие) можно внутрь html вставить, но я не вижу никой вігоды от этого. На сервере все таки лучше хранить картики файлами - это как минимум на 25 процентов меньше по размеру (относительно base64 варианта). Способ с хранением картинки внутри страницы оправдан только если у Вас дорого стоит установка нового соединения (как по деньгам, так и по времени) хочется сохранять страницу как один файл с картинками вместе.
Комментариев нет:
Отправить комментарий