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

Увеличиваем скорость загрузки страниц OpenCart

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

Учитывая, что проблема быстродействия в opencart стоит достаточно остро и подобные темы уже неоднократно поднимались на этом форуме, решил внести свою лепту.

Сразу оговорюсь, я не программист и решения, о которых я расскажу, для многих покажутся достаточно тривиальными, но тем не менее.

Итак, что имеем на входе:

1. Вес главной страницы 2.5мб

2. Google PageSpeed Score of 76 (out of 100).

проверять тут: https://developers.google.com/speed/pagespeed/insights

3. Page Speed Grade и YSlow Grade около 60%(что сильно не оч.)

проверять тут: http://gtmetrix.com

4. В магазине 2500 товаров и штук 14 категорий.

5. Главная страница, да и все остальные грузятся долго.

Магия (step-by-step):

1. Деактивировать все неиспользуемые модули.

2. Установить Smart Optimizer

Если после установки появляется, алерт с сообщениями на страницах магазина, то просто отключаем debug mode в конфиге, на ходовые качества не влияет.

3. Настраиваем Cloudflare, в архиве инструкция что делать.

4. регистрируем аккаунт на cloudflare.com

Меняем NSы и врубаем CDN. В настройках CDN, включаем минификацию JS и CSS, метод кеширования- simplified. Защиту лучше отключить, если она вам не нужна.

Что получили(Та-дам):

1. Вес Главной страницы 1.4мб

2. Google PageSpeed Score of 92 (out of 100).

3. Page Speed Grade: А (91%) и YSlow Grade: C (71%)

4. Сайт летает (Даже после очистки всех кешей)

Надеюсь это вам поможет. Успехов!

  • +1 5

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


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

проверить бы на десятке пациентов с тормозами.

если результат будет положительный - тема переедет в FAQ

  • +1 1

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


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

mobily, молодец.

от себя добавлю, что один из мощных методов в комплексной терапии:

APC — ускоритель PHP. Это расширение самого PHP.

Значительно улучшает производительность.

но доступен не на всех хостингах. на выделенных серверах - без проблем.

Opencart с ним хорошо совместим. Но, правда, не имел возможности тестировать со всеми на свете модулями.

Имеет определенную несовместимость с некоторыми другими движками.

Поэтому иногда удобно включать ускорение только для конкретного сайта.

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


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

действительно показатели выросли.продолжаю наблюдать...

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


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

Из своего опыта скажу, доступность серверов клоудфлейр где-то 97%, уже больше года использую эту cdn сеть для своих проектов, плюсов от их использования значительно больше чем минусов. Да и попал этот сервис в ту-ду лист не из-за минификатора, это CDN сеть, ее задача кешировать на своих серверах скрипты, картинки и стили с последующей раздачей посетителям с наиболее подходящей локации,тем самым снижая количество запросов к серверу и уменьшая потребление трафика..

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


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

Из своего опыта скажу, доступность серверов клоудфлейр где-то 97%, уже больше года использую эту cdn сеть для своих проектов, плюсов от их использования значительно больше чем минусов. Да и попал этот сервис в ту-ду лист не из-за минификатора, это CDN сеть, ее задача кешировать на своих серверах скрипты, картинки и стили с последующей раздачей посетителям с наиболее подходящей локации,тем самым снижая количество запросов к серверу и уменьшая потребление трафика..

97% - это очень плохо

10 суток в году неработоспособен! Серьезные магазины позволить себе такого не могут.

  • +1 1

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


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

Серьезные магазины могут себе позволить заплатить 20$ за про-аккаунт и заиметь аптайм 100% :)

  • +1 1

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


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

Вариантов множество, как платных, так и бесплатных. Тот, что я описал в первом посте лишь один из.

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


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

Ни как не получается установить Smart Optimizer, подскажите, пожалуйста, люди добрый, как его установить?

Скачал, распаковал залил в корень сайта, изменил права на 777 у папки кеша и дописал в его .htaccess

<ifmodule mod_expires.c="">
  <filesmatch "\.(gif|jpg|jpeg|png|swf|css|js|html?|xml|txt|ico)$"="">
  ExpiresActive On
  ExpiresDefault "access plus 10 years"
  </filesmatch>
</ifmodule>
<ifmodule mod_rewrite.c="">
  RewriteEngine On

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*\.(js|css))$ smartoptimizer/?$1

  <ifmodule mod_expires.c="">
  RewriteCond %{REQUEST_FILENAME} -f
  RewriteRule ^(.*\.(js|css|html?|xml|txt))$ smartoptimizer/?$1
  </ifmodule>[/size][/color][/font]
[font="Arial, Verdana, sans-serif"][color="#000000"][size=3]   <ifmodule !mod_expires.c="">
  RewriteCond %{REQUEST_FILENAME} -f
  RewriteRule ^(.*\.(gif|jpg|jpeg|png|swf|css|js|html?|xml|txt|ico))$ smartoptimizer/?$1
  </ifmodule>
</ifmodule>
<filesmatch "\.(gif|jpg|jpeg|png|swf|css|js|html?|xml|txt|ico)$"="">
  FileETag none
</filesmatch>

Изменений ни каких нет, из чего сделал вывод, что не работает....

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

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


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

... ну что могу сказать после непродолжительного использования:

сайт лежал раз пять за все время ~ 2 мес

показатели выросли но визуально без всяких замеров я прироста не увидел.

итог - снес.

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


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

Полностью согласен, google page speed, uphot.ru, http://gtmetrix.com это такие-же коммерческие структуры, которым нужно продавать свое дисковое пространство, облачные сервисы, эти цифры на их сайтах особо ничего не означают, opencart 1.5.4.1 изначально не тормоз,это мы добавляя в него кривые модули,которые писали люди не продумывая до конца как они будут друг с другом взаимодейсвовать, как модуль грузит сервер сайта или сервер базы данных, для создателя модуля главное "Мой модуль работает" остальное ваши проблеммы. Вот мой совет:

1.Установить модуль "1000 категорий аккордеон", реально удобный модуль и снижает заметно нагрузку на базу данных,сайт грузится быстрее чем со стандартными категориями.

2.Выключить подсчет товаров в категориях.

3.Убрать выпадающие категории.

4.Зайти в админку и поставить уровень сжатия на 6

5.Сжать все изображения на сервере до размера не более 50 килобайт. Если позволяет тематика сайта (но это не обязательно)

6.Убрать из футера ненужные ссылки,я выкинул все.

7.Кто рекомендует к одному товару другие советую исправить product.php (наберите в яндексе: Баг или фича "рекомендуемые товары")

8.выключить на сервере неиспользуемые расширения и модули.

Думаю что эти пункты ускорят загрузку вашего сайта процентов на 30...

  • +1 2

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


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

Ни как не получается установить Smart Optimizer, подскажите, пожалуйста, люди добрый, как его установить?

Скачал, распаковал залил в корень сайта, изменил права на 777 у папки кеша и дописал в его .htaccess

 

<ifmodule mod_expires.c="">
   <filesmatch "\.(gif|jpg|jpeg|png|swf|css|js|html?|xml|txt|ico)$"="">
	  ExpiresActive On
	  ExpiresDefault "access plus 10 years"
   </filesmatch>
</ifmodule>
<ifmodule mod_rewrite.c="">
   RewriteEngine On

   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule ^(.*\.(js|css))$ smartoptimizer/?$1

   <ifmodule mod_expires.c="">
	  RewriteCond %{REQUEST_FILENAME} -f
	  RewriteRule ^(.*\.(js|css|html?|xml|txt))$ smartoptimizer/?$1
   </ifmodule>[/size][/color][/font]
[font="Arial, Verdana, sans-serif"][color="#000000"][size=3]   <ifmodule !mod_expires.c="">
	  RewriteCond %{REQUEST_FILENAME} -f
	  RewriteRule ^(.*\.(gif|jpg|jpeg|png|swf|css|js|html?|xml|txt|ico))$ smartoptimizer/?$1
   </ifmodule>
</ifmodule>
<filesmatch "\.(gif|jpg|jpeg|png|swf|css|js|html?|xml|txt|ico)$"="">
   FileETag none
</filesmatch>

Изменений ни каких нет, из чего сделал вывод, что не работает....

 

 

 

У меня после дописывания ошибку 500 выдает. А если менять index.php то белая страница и // пишет. 

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


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

Проставьте индексы в базе данных будет еще быстрее работать если вы конечно планируете, что кол-во товаров базе будет увеличиваться и будет увеличиваться кол-во  посетителей на сайте. А то что вы оптимизировали хорошей производительности не даст. 

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


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

 

Есть еще ru.cloudflare.com, правда там перевод кривой. 

Спасибо за статью, действительно помогает! Размер страницы уменьшился с 1,2 до 0,9 МБ

Но все же хотелось бы достичь объема меньше 0,1 МБ. А оптимизаторы советуют делать объем страницы не более 0,03 МБ - это для продвижения по запросам в поисковиках хорошо.

 

После того, как я прописал в DNS сервера cloudflare.com, мой сайт стал не доступен - это нормально?

Буду надеятся, что скоро заработает вновь.

 

P.S. Сайт заработал. Но такое ощущение, что после установки cloudflare.com стал медленнее грузится: Google PageSpeed показывает, что скорость загрузки уменьшилась с 92 до 87 и что надо "Удалить из верхней части страницы код JavaScript и CSS, блокирующий отображение" - пока не совсем понимаю как это сделать. Может кто подскажет?

 

PingAdmin показывает скорость загрузки сайта 100-400 КБ/с из разных городов по всей России,

HostTracker показывает 10-40 КБ/c из разных городов мира, хотя мой VDS-хостер заявляет, что серверы подключены на скорости 100Мбит/сек. В чем проблема может быть не понимаю, почему скорость загрузки маленькая?

 

PingDom перестал видеть сайт вообще, видимо DNS-настройки еще не дошли до него.

 

Loadimpact показывает, что text/html занимает 1,6% объема страницы сайта и 98% времени загрузки:

5d875c3fac0ebb4aa9d6622394f3a23d4292c5a8

 

Кто может дать еще какие- то советы по увеличению скорости загрузки сайта?

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

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


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

Огромное спасибо. У меня после улучшения страница весит вообще 600 кб!

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


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

4.Зайти в админку и поставить уровень сжатия на 6

 

А почему не на 9? Кстати тест на гугл разницы не почуствовал. Может сжатие не работает у меня?

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


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

Господа, включил сжатие в админке с параметром "6". Но Гугл ПэйджСпид все равно ругается что сжатие не включено.

ЧЯДНТ?

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


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

Cloudflare с уровнем сжатия работает только хуже. Убрал код Cloudflare, уровень сжатия начал работать.

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


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

Включил сжатие на 9 и скоростть загрузки стала 2,77с против 7,6с.Реально круто.А на 6 разницы не было

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


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

 "Удалить из верхней части страницы код JavaScript и CSS, блокирующий отображение" - пока не совсем понимаю как это сделать. Может кто подскажет?

 

Кто-нибудь разобрался как это сделать?

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


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

Кто-нибудь разобрался как это сделать?

Что тут понимать, ненужные скрипты отвечающие за подгрузку доп. функционала (colorbox, jquery.ui) и счетчики яндекса поместите в footer.tpl до закрывающего тега body. 

Если есть несколько каруселей товаров на главной, то сделайте подгрузку этих скриптов по условию, что если на главной грузим скрипт в противном не грузим..

Как-то так )))

Если заняться оптимизацией opencart, то можно и самому минифицировать скрипты и css вручную, и картинки загружать сразу сжатые. А еще для магазинов с более 3000 товаров, лучше не брать простой хостинг, а хотя бы самый дешевый VPS. И будет хорошо.

 

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


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

Что тут понимать, ненужные скрипты отвечающие за подгрузку доп. функционала (colorbox, jquery.ui) и счетчики яндекса поместите в footer.tpl до закрывающего тега body. 

Если есть несколько каруселей товаров на главной, то сделайте подгрузку этих скриптов по условию, что если на главной грузим скрипт в противном не грузим..

Как-то так )))

Если заняться оптимизацией opencart, то можно и самому минифицировать скрипты и css вручную, и картинки загружать сразу сжатые. А еще для магазинов с более 3000 товаров, лучше не брать простой хостинг, а хотя бы самый дешевый VPS. И будет хорошо.

 

 

Спасибо за ответ. Но в footer.tpl не получается. Выходит много ошибок. Перенес в конец файла header.tpl

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


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

Сайт установлен на VPS сервере Centos RAM-1200MB CPU-1700 Mhz. Установлен Apache+nginx+APC. Для ускорения отключил пересчет товаров, установил smartoptimizer, gzip сжатие nginx 9, перенес скрипты в конец файла header.tpl, удалил не используемые модули. Товаров всего около 1000шт. Скорость ответа сервера 2,3сек. Пробовал memcached, но прироста производительности не заметил. Что еще можно сделать для ускорения? Возможно ли сделать ответ 0,2сек?

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


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

Сайт установлен на VPS сервере Centos RAM-1200MB CPU-1700 Mhz. Установлен Apache+nginx+APC. Для ускорения отключил пересчет товаров, установил smartoptimizer, gzip сжатие nginx 9, перенес скрипты в конец файла header.tpl, удалил не используемые модули. Товаров всего около 1000шт. Скорость ответа сервера 2,3сек. Пробовал memcached, но прироста производительности не заметил. Что еще можно сделать для ускорения? Возможно ли сделать ответ 0,2сек?

 

Вместо smartoptimizer, поставьте себе google pagespeed module  к апачу, он корректно реализует все фишки, связанные с оптимизацией отдачи статического контента. Жмет и объединяет скрипты и стили, жмет картинки. Если попотеть то можно все бекграунды  в css преобразовать в Base64. И т.д.

При этом обработка происходит не на уровне PHP, а на уровне апача. Ну и к нему в качестве проксируещей прокладки nginx неплохо смотрится.

 

Также очень неплохо вынести все скрипты и js в футер, оставив в шапке только подключение Jquery, чтобы нормально отрабатывались скрипты, встроенные в шаблоны модулей.

 

Но учтите, этими методами вы решаете проблемы отдачи именно статического контента.

А для уменьшения времени генерации динамического (непосредственно содержание HTML страниц магазина) нужно копать и оптимизировать код, проверить есть ли индексы в БД, и пользоваться несколькими уровнями кеширования данных.

  • +1 1

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


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

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

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

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

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

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

Войти

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

Войти

  • Похожий контент

    • От snastik
      1 500.00 руб
      Скачать/Купить дополнение


      Turbo | Ускоритель Opencart 2.x | HHTPS FIX | VievedMod | V1.1
      У вас тормозит магазин?
      Ваш хостинг гневно шлет письма о превышении нагрузки?
      Клиенты уходят так и не дождавшись загрузки страницы?
      Turbo - решит все ваши проблемы в 99% случаев*.
      Пока что Turbo работает только для версий 2.0.x 2.1.x
      для версий 1.5.x используйте Turbocache в связке с этим решением
      Модуль основан на популярном модуле Turbocache а также на opensource решении от budgetneon.
      Также он использована библиотека MobileDetect
      Что делает этот модуль и для чего он нужен?
      Кеширует все повторяющиеся ресурсоемкие элементы системы ( как то верхнее меню, модуль категорий и все стандартные модули) а после этого сохраняет в кеш целиком всю страницу магазина и при повторном обращении по этому адресу, выдает заранее сохраненный контекст. Благодаря чему существенно снижается нагрузка на сервер и увеличивается скорость повторной загрузки страниц для новых посетителей.
      Демо на реальном магазине: st-sklad.ru
      Положительные отзывы:
      ----------------------------------------------------------------------
      Огромное спасибо автору, кто еще не уверен скажу , модуль стоит на рабочем проекте, работает шикарно, лучше не бывает, так же пользовался модулем нитро пак и скажу глюков в нем и правда куча, мне в нем нравиться только сжатие картинок , там есть функция, указываешь папку и он сжимает, но база данных там увеличивается на 100% у меня база огромная из за того, что товара 25000 шт, с нитро она нереально огромная.
      Данный модуль отрабатывает шикарно и без ошибок, ну и поддержка русскоязычная, а это несомненный плюс,
      Итог модуль стоит своих денег хоть я и клянчил скидку, но и без данной скидки модуль стоит намного больше указанной суммы.
      ----------------------------------------------------------------------
      Отрицательные отзывы:
      ----------------------------------------------------------------------
      Пока нет....
      ----------------------------------------------------------------------
      Т.е если к вам зашел посетитель на одну страницу и увидел меню магазина, то для всех остальных посетителей, меню уже не будет формироваться запросами в базу данных и оказывать нагрузку на сервер, а загрузится в виде готового набора данных.
      Это позволяет значительно снизить нагрузку на базу данных на всех первичных генерациях страниц.
      После этого. Если страница была просмотрена одним пользователем, для вех остальных она уже будет готовая взята из кеша и выведена в браузер, практически без обращения в базу данных.
      Т.е. дополнение использует двухуровневое кеширование данных, что позволяет высвободить до 90% вычислительных ресурсов сервера.
      Данное решение является уникальной разработкой команды Opencart.Pro и не реализовано до сих пор ни в одном из модулей оптимизации Opencart.
      Даже на пустом магазине дополнение показывает прирост производительности в 15 раз

      Особенности дополнения.
      Поддержка:
      - Мультимагазин
      - Мултивалюты
      - Мультиязчыность
      - Несколько групп пользователей
      - HTTPS протокола
      - Возможности корректной работы по обеим протоколам!!!
      v. 1.0
      -Полноценное сохранение всех серверных заголовков.
      -Возможность из админки добавить исключения для запрета кеширования любых контроллеров.
      -Возможность из админки задать время жизни кеша.
      -Облегченный алгоритм очистки "протухших файлов". Старые файлы проверяются не при каждой загрузке магазина а раз в час.
      v 1.1
      -Добавлен модуль просмотренных товаров, работающий независимо от включенного глобального кеша.
      -Добавлен модификатор, исправляющий некорректное кеширование системных файлов, и формирование ссылок домена, при работе с обеими протоколами.
      -Для модуля просмотренных товаров - уже есть тплки для шаблона Coloring
      -Добавлена кнопка очистить кеш в админке
      -Масса мелких багфиксов
      И самое главное дружит с шаблонами, которые отдают разный контент под разные устройста (типа Journal) а не используют адаптивную верстку.
      Установка дополнения:
      1. скопировать файлы из папки UPLOAD в корневую директорию вашего магазина.
      2. задать права 777 для папки system/storage/turbocache.
      3. Добавить в index.php в корневой папке вашего магазина после строки.
      $registry->set('cart', new Cart($registry));
      вот такие строки:
      // Turbo
      require_once(DIR_SYSTEM . 'turbo/turbo.php');
      GLOBAL $turbo;
      $turbo = new Turbo($registry);
      4. Обновить кеш модификаторов в административной части вашего магазина.
      5. Запросить лицензионный ключ личным сообщением на торговой платформе у продавца дополнения, либо запросом на почту info@opencart.pro, указав номер покупки, ваш ник и домен магазина.
      6. Активировать дополнение в настройках модулей административной части вашего магазина.
      7. Установить необходимые вам настройки и ввести код лицензии во вкладке лицензия.
      8. Если вы используете HTTPS протокол. Загрузите из папки https_fix модификатор. Обновите кеш модификаторов и удалите системный кеш.
      Дополнительные фунции:
      Дополнение умеет изменять размер сжатия Jpg и Png изображений (пока эта возможность находится в экспериментальном режиме. В дальнейшем в дополнении могут появится дополнительные возможности для оптимизации оценки GooglePageSpeed).
      Часто задаваемые вопросы:
      DEMO => TURBO.OPENCART.PRO
      Установка и настройка модуля на магазине клиента + 100% от стоимости модуля.
      При обновлении на версию 1.1 внимательно прочтите инструкцию.
      Не рекомендуется к использованию с темой Journal.
      Если после установки модуля нагрузка на вашу систему не снизилась, а быстро стали работать только закешированные страницы, то скорее всего у вас косячные сторонние модули, либо не правильная конфигурация серверного окружения. С такими пациентами - пишите в личку.
      Ручная оптимизация больших магазинов и тонкая настройка серверов - под ключ.
      *Для чистого магазина на Opencart 2.x при условии отсутствия сторонних дополнений, существенно потребляющих ресурсы сервера.
      Добавил snastik Добавлено 04.04.2016 Категория Кэширование, сжатие, ускорение Системные требования Opencart версий 2.0 - 2.1.xIoncubeLoader с поддержкой Ioncube V9.0<PHP 5.3Внимание. Дополнение не будет корректно работать с переименованной папкой администратора. Сайт разработчика http://opencart.pro/ Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart ocStore OpenCart.Pro, ocShop  
    • От snastik
      У вас тормозит магазин?
      Ваш хостинг гневно шлет письма о превышении нагрузки?
      Клиенты уходят так и не дождавшись загрузки страницы?
      Turbo - решит все ваши проблемы в 99% случаев*.
      Пока что Turbo работает только для версий 2.0.x 2.1.x
      для версий 1.5.x используйте Turbocache в связке с этим решением
      Модуль основан на популярном модуле Turbocache а также на opensource решении от budgetneon.
      Также он использована библиотека MobileDetect
      Что делает этот модуль и для чего он нужен?
      Кеширует все повторяющиеся ресурсоемкие элементы системы ( как то верхнее меню, модуль категорий и все стандартные модули) а после этого сохраняет в кеш целиком всю страницу магазина и при повторном обращении по этому адресу, выдает заранее сохраненный контекст. Благодаря чему существенно снижается нагрузка на сервер и увеличивается скорость повторной загрузки страниц для новых посетителей.
      Демо на реальном магазине: st-sklad.ru
      Положительные отзывы:
      ----------------------------------------------------------------------
      Огромное спасибо автору, кто еще не уверен скажу , модуль стоит на рабочем проекте, работает шикарно, лучше не бывает, так же пользовался модулем нитро пак и скажу глюков в нем и правда куча, мне в нем нравиться только сжатие картинок , там есть функция, указываешь папку и он сжимает, но база данных там увеличивается на 100% у меня база огромная из за того, что товара 25000 шт, с нитро она нереально огромная.
      Данный модуль отрабатывает шикарно и без ошибок, ну и поддержка русскоязычная, а это несомненный плюс,
      Итог модуль стоит своих денег хоть я и клянчил скидку, но и без данной скидки модуль стоит намного больше указанной суммы.
      ----------------------------------------------------------------------
      Отрицательные отзывы:
      ----------------------------------------------------------------------
      Пока нет....
      ----------------------------------------------------------------------
      Т.е если к вам зашел посетитель на одну страницу и увидел меню магазина, то для всех остальных посетителей, меню уже не будет формироваться запросами в базу данных и оказывать нагрузку на сервер, а загрузится в виде готового набора данных.
      Это позволяет значительно снизить нагрузку на базу данных на всех первичных генерациях страниц.
      После этого. Если страница была просмотрена одним пользователем, для вех остальных она уже будет готовая взята из кеша и выведена в браузер, практически без обращения в базу данных.
      Т.е. дополнение использует двухуровневое кеширование данных, что позволяет высвободить до 90% вычислительных ресурсов сервера.
      Данное решение является уникальной разработкой команды Opencart.Pro и не реализовано до сих пор ни в одном из модулей оптимизации Opencart.
      Даже на пустом магазине дополнение показывает прирост производительности в 15 раз

      Особенности дополнения.
      Поддержка:
      - Мультимагазин
      - Мултивалюты
      - Мультиязчыность
      - Несколько групп пользователей
      - HTTPS протокола
      - Возможности корректной работы по обеим протоколам!!!
      v. 1.0
      -Полноценное сохранение всех серверных заголовков.
      -Возможность из админки добавить исключения для запрета кеширования любых контроллеров.
      -Возможность из админки задать время жизни кеша.
      -Облегченный алгоритм очистки "протухших файлов". Старые файлы проверяются не при каждой загрузке магазина а раз в час.
      v 1.1
      -Добавлен модуль просмотренных товаров, работающий независимо от включенного глобального кеша.
      -Добавлен модификатор, исправляющий некорректное кеширование системных файлов, и формирование ссылок домена, при работе с обеими протоколами.
      -Для модуля просмотренных товаров - уже есть тплки для шаблона Coloring
      -Добавлена кнопка очистить кеш в админке
      -Масса мелких багфиксов
      И самое главное дружит с шаблонами, которые отдают разный контент под разные устройста (типа Journal) а не используют адаптивную верстку.
      Установка дополнения:
      1. скопировать файлы из папки UPLOAD в корневую директорию вашего магазина.
      2. задать права 777 для папки system/storage/turbocache.
      3. Добавить в index.php в корневой папке вашего магазина после строки.
      $registry->set('cart', new Cart($registry));
      вот такие строки:
      // Turbo
      require_once(DIR_SYSTEM . 'turbo/turbo.php');
      GLOBAL $turbo;
      $turbo = new Turbo($registry);
      4. Обновить кеш модификаторов в административной части вашего магазина.
      5. Запросить лицензионный ключ личным сообщением на торговой платформе у продавца дополнения, либо запросом на почту info@opencart.pro, указав номер покупки, ваш ник и домен магазина.
      6. Активировать дополнение в настройках модулей административной части вашего магазина.
      7. Установить необходимые вам настройки и ввести код лицензии во вкладке лицензия.
      8. Если вы используете HTTPS протокол. Загрузите из папки https_fix модификатор. Обновите кеш модификаторов и удалите системный кеш.
      Дополнительные фунции:
      Дополнение умеет изменять размер сжатия Jpg и Png изображений (пока эта возможность находится в экспериментальном режиме. В дальнейшем в дополнении могут появится дополнительные возможности для оптимизации оценки GooglePageSpeed).
      Часто задаваемые вопросы:
      DEMO => TURBO.OPENCART.PRO
      Установка и настройка модуля на магазине клиента + 100% от стоимости модуля.
      При обновлении на версию 1.1 внимательно прочтите инструкцию.
      Не рекомендуется к использованию с темой Journal.
      Если после установки модуля нагрузка на вашу систему не снизилась, а быстро стали работать только закешированные страницы, то скорее всего у вас косячные сторонние модули, либо не правильная конфигурация серверного окружения. С такими пациентами - пишите в личку.
      Ручная оптимизация больших магазинов и тонкая настройка серверов - под ключ.
      *Для чистого магазина на Opencart 2.x при условии отсутствия сторонних дополнений, существенно потребляющих ресурсы сервера.
    • От sobwoofer
      Система которая использует Nginx без Apache существенно работает быстрее нежели с Apache, по этому решил поделиться собственным мануалом по настройке сервера для OpenCart и установлен модуля pagespeed, т.к. очень долго бродил по всяко разным сайтам, но того что нужно, или того что работало бы у меня увы не смог найти.

      Берем голый сервер c предустановленной OS в моем случае использован Ubuntu lts 32bit 12.04 использовал DigitalOcean (расположение сервера в Амстердаме).
      Устанавливаем nginx, как мне советовали я брал пакет easyengine с github, хотя он затачивался под вордпресс - не проблема, ниже напишу как сделать под OpenCart.

       
      -------------------------NGINX+Mysql+PHP-------------------------
      Итак шаг первый Устанавливаем easyengine, nginx, mysql, php.
      wget -qO ee rt.cx/ee && sudo bash ee ee stack install Спросит логин и пароль пользователя во время установки не забываем то, что вводим.

      Далее создаем сайт следующей командой.
      ee site create sait.com --mysql Устанавливаем zip архиватор, он нам в дальнейшем все равно понадобится.
      sudo apt-get install unzip Загружаем наш сайт на сервер по пути /var/www/sait.com/htdocs
      Загрузить можно например через FileZilla предварительно выбрав в настройках протокол SFTP.

      Далее Импортируем нашу MySQL Базу Дынных с помощью уже установленного PHPmyAdmin
      который доступен по адресу sait.com/phpmyadmin
      если не пускает - ищем пароль тут  "/etc/nginx/htpasswd-ee" пользователь root
      Чтобы попасть в myAdmin вводим Пользователь\пароль который задавали при установке mysql в начале.
      Доступа к нужной нам базе (база и пользователь создается при создании домена) лежит по пути /var/www/sait.com/ee-config.php

      Теперь сайт должен работать, но к сожалению или к счастью в nginx нет поддержки .htaccess, соответственно SEO ЧПУ у нас не работает вообще, по этому нужно настроить собственный nginx конфиг, он у нас сформировался как и общий, так и для каждого сайта уникально.
      открываем конфиг нашего сайта /etc/nginx/sites-available/sait.com
      и заменяем все в нем на следующий код (спасибо pashast), ссылка на тему
      server { listen 80; server_name www.sait.com sait.com; root /var/www/sait.com/htdocs; access_log /var/log/nginx/sait.com.access.log rt_cache; error_log /var/log/nginx/sait.com.error.log; index index.php; location / { try_files $uri @opencart; }location @opencart { rewrite ^/(.+)$ /index.php?_route_=$1 last; }location ~ /\.ht { deny all; }location ~* (\.(tpl|ini))$ { deny all; }if (!-e $request_filename) { rewrite ^/(.*)$ /index.php?_route_=$1 last; }location /admin { index index.php; }location ~* .(js|css|ico|xml|swf|flv|eot|ttf|woff|pdf|xls|htc)$ { add_header Pragma "public"; add_header Cache-Control "public, must-revalidate, proxy-revalidate"; access_log off; log_not_found off; expires 90d;} location ~* .(jpg|jpeg|gif|css|png)$ {access_log off;expires 10d;}location ~ .php$ {fastcgi_pass 127.0.0.1:9001;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /var/www/sait.com/htdocs$fastcgi_script_name;include fastcgi_params;fastcgi_param QUERY_STRING $query_string;fastcgi_param REQUEST_METHOD $request_method;fastcgi_param CONTENT_TYPE $content_type;fastcgi_param CONTENT_LENGTH $content_length;fastcgi_intercept_errors on;fastcgi_ignore_client_abort off;fastcgi_connect_timeout 60;fastcgi_send_timeout 180;fastcgi_read_timeout 180;fastcgi_buffer_size 128k;fastcgi_buffers 4 256k;fastcgi_busy_buffers_size 256k;fastcgi_temp_file_write_size 256k;}} Не забываем изменять домен sait.com на свой. (Даный файл работает правильно только с движком OpenCart, если у вас на этом сервере будут сайты иных систем, то гуглим решения как сделать nginx конфиг для вашей системы)

      Теперь у нас работает OpenCart на Nginx без Apache, чего собственно и добивались.
      Можем проверить скорость тут, и порадоваться быстродействию.
       
      -------------------------Pagespeed-------------------------

      Установим теперь на наш nginx модуль google pagespeed,представляет из себя набор фильтров и позволяет значительно повысить производительность сайта. [/size]что собственно должно еще больше ускорить загрузку нашего sait.com и отклик сервера.
      Ссылка на официальный мануал тут.
      Некоторая информация взята с хабра, rosehosting и еще многих-многих сайтов. но зазначу, то с начала и до успешного конца ни по одному мануал пройти не удалось.

      И так Приступим:

      ВНИМАНИЕ РЕКОМЕНДУЮ КОМАНДЫ ВЫПОЛНЯТЬ ПО ОДНОЙ ДАБЫ ВИДЕТЬ НЕТ ЛИ ОШИБОК.
      Устанавливаем необходимые пакеты:
      apt-get install build-essential zlib1g-dev libpcre3 libpcre3-dev Создаем каталог на сервере, у меня это каталог» «temp»[/size]

      mkdir /temp cd $HOME/temp Задаем версию в переменную, Заргужаем и распаковываем модуль я брал (1.7.30.1 версию, можете выбрать какая вам по душе):
      NPS_VERSION=1.7.30.1 wget https://github.com/pagespeed/ngx_pagespeed/archive/v${NPS_VERSION}-beta.zip unzip v${NPS_VERSION}-beta.zip cd ngx_pagespeed-${NPS_VERSION}-beta/ Загружаем и распаковываем PSOL:
      wget https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz tar -xzvf ${NPS_VERSION}.tar.gz Проделываем подобное с 1.4.5 версией Nginx (можете пробовать другую версию):
      cd $HOME/temp NGINX_VERSION=1.4.5 wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz tar -xvzf nginx-${NGINX_VERSION}.tar.gz cd nginx-${NGINX_VERSION}/ Если у нас nginx уже установлен, а в данном случае он установлен, то нам нужно прописать пути для конфигов.
      Следующая команда выполняется целиком, копируйте ее в консоль полностью и выполняйте.
      ./configure  --conf-path=/etc/nginx/nginx.conf \ --error-log-path=/var/log/nginx/error.log \ --sbin-path=/usr/sbin/nginx \ --pid-path=/var/run/nginx.pid \ --lock-path=/var/lock/nginx.lock \ --http-log-path=/var/log/nginx/access.log \ --http-client-body-temp-path=/var/lib/nginx/body \ --http-proxy-temp-path=/var/lib/nginx/proxy \ --http-fastcgi-temp-path=/var/lib/nginx/fastcgi \ --http-uwsgi-temp-path=/var/lib/nginx/uwsgi \ --http-scgi-temp-path=/var/lib/nginx/scgi \ --prefix=/var/lib/nginx \ --with-http_stub_status_module \ --with-http_flv_module \ --with-http_ssl_module \ --with-http_dav_module \ --with-http_sub_module \ --with-http_realip_module \ --with-http_gzip_static_module \ --with-http_secure_link_module \ --with-ipv6 \ --with-debug \ --add-module=$HOME/temp/ngx_pagespeed-${NPS_VERSION}-beta\ Если после выполнения предыдущей команды видим следующую ошибку (взято с firstwiki):
      [color=#ff0000][i]./configure: error: SSL modules require the OpenSSL library.You can either do not enable the modules, or install the OpenSSL libraryinto the system, or build the OpenSSL library statically from the sourcewith nginx by using --with-openssl= option. [/i][/color] то устанавливаем это:
      aptitude install libssl-dev И повторяем попытку прописывания путей еще раз.

      Если все гуд. начинаем установку:
      make apt-get install checkinstall sudo make install Успешно установились :)
      перезагружаемся
      service nginx restart Успешно перезагрузились :) если не успешно, смотрим сообщение ниже и повторяем попытку
      Проверяем версию nginx, если не совпадает с обновленной, значит пошло что-то не так.
      nginx -v Создадим папку для кеша
      mkdir /var/cache/ngx_pagespeed Теперь нужно подправить общий конфиг "Энджинкса":
      Идем по пути /etc/nginx/nginx.conf

      и вставляем код в тег http {СЮДА ВСТАВЛЯЕМ}
      pagespeed on;pagespeed FileCachePath "/var/cache/ngx_pagespeed/";pagespeed EnableFilters combine_css,combine_javascript,rewrite_images,rewrite_css,rewrite_javascript,inline_images,recompress_jpeg,recompress_png,resize_images;pagespeed JpegRecompressionQuality 85;pagespeed ImageRecompressionQuality 85;pagespeed ImageInlineMaxBytes 2048;pagespeed LowercaseHtmlNames on; и еще раз перезагружаем nginx
      service nginx restart Вот такая конфигурация позволила в несколько раз уменьшить скорость загрузки страниц на сайте, и соответственно сэкономить на хостинге и повысить ранжирование в поисковых системах.
      Удачи.
  • Последние посетители   0 пользователей онлайн

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

×

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

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