Сжатие / оптимизация изображений с API против локального?

Я управляю многими веб-сайтами, и в настоящее время все эти сайты выводят изображения большого размера. Моя задача — исправить это и сжать изображения на сайтах, прежде чем предоставлять их посетителям.

Я изучал лучшие шаги, которые нужно предпринять здесь, и был бы признателен, если бы кто-нибудь мог прояснить мои проблемы и / или указать мне правильное направление.

Вот то, что я считаю, что мои варианты:

  • Отправьте изображение в API, загрузите ответ, запишите его в файл.
  • Установите сжатую часть программного обеспечения, чтобы не требовался вызов API.

Вариант первый — отправка в API. Преимущество в том, что обработка выполняется в другом месте и не замедляет работу моего сервера. Недостатком является то, что он медленный — до сих пор я опробовал API TinyPNG, и для обработки 2 МБ JPG потребовалось более 10 секунд. Что произойдет, если их API тоже отключится? Нехорошо.

Вариант второй — обработка изображения локально. Выгода здесь в том, что я могу быть уверен, что это будет работать каждый раз. Недостатком является то, что для этого мне нужно установить на сервер программное обеспечение для сжатия (в отличие от того, что я надеялся сделать, а именно запустить PHP-скрипт). Мои сайты расположены на нескольких разных серверах, и я уверен, что некоторые из них будут отрицать установку исполняемых файлов, которые мы можем использовать (особенно когда они будут использовать много ЦП). Я читал, что использование MozJpeg — хорошее место для начала, но требует установки исполняемых файлов, которые могут быть запрещены большинством хостов.

Мои вопросы, в частности:

  • Правильно ли я считаю, что для сжатия изображений локально мне нужно, чтобы мой хостинг-провайдер установил для меня программное обеспечение? Существуют ли опции только для PHP, которые не требуют установки исполняемых файлов?
  • Вообще, будет ли целесообразнее использовать внешний API сжатия для моего варианта использования?
  • Наконец, является ли StackOverflow подходящим местом, чтобы задать этот вопрос? Буду ли я лучше искать совет, который мне нужен в другом месте? Если так, то где?

Спасибо.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]