Как правильно осуществлять загрузку и кэширование изображений?

Здравствуйте.
Есть мобильное приложение, в котором необходимо осуществлять загрузку большого количества изображений. Я знаю что в Android для этих целей используют либо Picasso, либо Glide.
Первый вопрос состоит в том, могут ли данные библиотеки загружать данные по протоколу FTP? И вообще каких образом можно хранить изображения на сервере, что получить из по HTTP?
Второй момент состоит в том, что если я определенного количества устройств буду загружать с сервера изображение, то оно каждый раз будет осуществляться чтение с диска (если изображение не кэшировано на стороне устройства). Получается необходимо дополнительно осуществлять кэширование изображений на стороне сервера, то есть хранить наиболее используемые изображения в ОП? Есть ли такие коробочные решения или их необходимо реализовывать самостоятельно.

Заранее спасибо.
  • Вопрос задан
  • 1012 просмотров
Пригласить эксперта
Ответы на вопрос 1
@101-s
могут ли данные библиотеки загружать данные по протоколу FTP?
не сильно хорошо знаю эти библиотеки, но сам подход мне кажется не очень разумным, получается что приложение использует логин и пароль, что не есть гуд.

каких образом можно хранить изображения на сервере, что получить из по HTTP?

очень просто - заливаете их на сервер в нужную папку своего сайта (htttp://site.ru/img/ или другое хранилище ресурсов.

Получается необходимо дополнительно осуществлять кэширование изображений на стороне сервера

на стороне сервера ничего кешировать не надо, Glide кеширует изображение на стороне пользователя, причем по умолчанию использует целых 4 слоя кэша
By default, Glide checks multiple layers of caches before starting a new request for an image:

Active resources - Is this image displayed in another View right now?
Memory cache - Was this image recently loaded and still in memory?
Resource - Has this image been decoded, transformed, and written to the disk cache before?
Data - Was the data this image was obtained from written to the disk cache before?
Из доков: https://bumptech.github.io/glide/doc/caching.html
Ответ написан
Ваш ответ на вопрос

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

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