Перейти к содержанию
makaron4ik

Решение и обсуждение. Увеличиваем скорость загрузки в 2 раза за счет отключения сжатия изображений в opencart 1.5.6.4

Рекомендуемые сообщения

Всем привет! Хочу поделится.

Проблема в том что опенкарт не может оставить в покое картинки, т.к. сжатые вручную картинки имеют 10кб, а при загрузке на сайт в кеше генерируется 30 кб! Смотрите:

 

Было: G1CCNONj.png

G1CCNONl.png

 

Стало: G1CCNONk.png

G1CCNONm.png

 

Что делаем:

Находим файл: system\library\image.php

 

Редактируем код: 

1) Было: public function save($file, $quality = 100) {

    Стало:  public function save($file) {

2) Было: imagejpeg($this->image, $file, $quality);

     Стало: imagejpeg($this->image, $file);

Ошибок не заметил, тестирую, а прирост скорости загрузки в 2 раза!

 

Что для меня не сработало (картинки все равно увеличивались в размере):

 

system/library/image.php

    public function save($file, $quality = 90) {

меняете на

    public function save($file, $quality = 100) {

ТЕМА

 

А еще давайте сделаем так: открываете картинку в Фотошопе, Жмете Файл - Сохранить для Веб. Справа качество джепег на 100, галка "Конвертировать в sRGB" и сразу же под ним профиль "Internet Standart RGB". Ну то есть надо убедиться что это не из-за переконвертации цветовых пространств (может картинки у вас в Adobe RGB или CMYK)

 

 

ВНИМАНИЕ! Дополнение:

Что бы пользоваться этим способом нужно контролировать ваши картинки, т.е. сжимать все вручную т.к. отключается внутреннее сжатие.

Например для JPG я использую программу RIOT, а для PNG пользуюсь сервисом tinypng.com

 

Если есть у кого замечания или дополнения пишите! Может вообще этот способ противопоказан)

Изменено пользователем makaron4ik

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По факту конечно скорость загрузки не увеличилось в 2 раза, но количество загружаемых данных уменьшено на 40% где то))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

для чего все эти извращения?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

для чего все эти извращения?

1) Опенкард "плохо" сжимает картинки, в ручную получается лучше.

2) Если сжатые вручную залить в опенкард то картинки раздуваются в 3 раза.

Удалось сократить с 30 до 10 кб см. скрины под сполейром.

Но это как вы выразились "извращение" будет заметно у кого много изображений.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У кого много упирается не в размер файлов

Заметно будет только у кого еле тянет модем

Вы тратите кучу временных ресурсов на борьбу с симптомами

Если цель стоит оптимизация изображений, значительно выгоднее заказать адаптацию одной из php-библиотек, коих много, для работы с опенкарт

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мобильные телефоны вы не берете в счет?

А конкретные готовые решения оптимизации есть на примете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проверил на тестовой копии магазина - работает без проблем.

С учетом того, что на сайте ВСЕ фотографии обрабатываются вручную и сохраняются оптимизированными, давно искал вариант, чтобы опенкарт их вообще не трогал. Судя по всему, нашел :)

В особенности это касалось баннеров, которые Опенкарт тоже пережимал, портя качество. Теперь не трогает. Спасибо за вариант. Будем "посмотреть" ))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для 1,5,2,1 не заметила вообще изменений.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

после правок библиотеки image нужно кеш изображений очистить, чтобы они уже по-новой генерировались

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну,конечно! Чистила.

Не заметила именно в модуле вывода картинок опций. В остальном у меня все и так работает корректно. Склоняюсь к мысли,что это с модулем проблема все же

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Модуль отключил так как формирует 100*100 и на главную мне нужны картинки 1000*700 так примерно!

А он все штампует 100*100, я его удалил и все равно какртинки 100*100!

Разработчик откликнетесь как теперь это все исправить?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Используем бескомпромиссное решение и не мучаемся.

Наслаждаемся положительной оценкой Гугла.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.