Оптимизация изображений. Imagemin

Представим ситуацию:

  • при регистрации пользователь А загрузил аватарку, размер которой превышает 20 мегабайт

  • теперь, каждый пользователь нашего сайта, который заходит на страницу А будет ожидать несколько секунд для того, чтобы увидеть полностью фото А

Это может привести к неудовлетворенности от пользования сайтом и полный отказ от него большинством пользователей. Для того, чтобы предотвратить такое развитие событий, необходимо сжимать полученные нами фото, чтобы их дальнейшая загрузка происходила в разы быстрее.

Одной из библиотек, которые помогают минифицировать изображения, является imagemin.

Один из возможных вариантов алгоритма сохранения и сжатие картинок являются:

  1. Сохранение картинки с помощью multer в папку с временными файлами draft.

  2. Оптимизация полученного изображения через imagemin и сохранение в папку с картинками, которые мы уже отдаем пользователям (например: images)

  3. Удаление исходного изображения из папки draft

Last updated