Помощь Производительность Opencart

spamhost

Постоялец
Регистрация
29 Апр 2009
Сообщения
295
Реакции
161
Прошу поделиться своим опытом повышения производительности эл. магазинов на базе Opencart.
Прошу делиться своими достигнутыми результатами оптимизации, напр. в формате:

Кол-во товаров | Версия OpenCart | Конфиг. серверного окружения (аппар. и прогр.) | Измерение для DESKTOP страниц внутри Категорий Для просмотра ссылки Войди или Зарегистрируйся

p.s. Пока на моих VDS KVM (4CPU, 4GB RAM) OC 2.X умирает при кол-ве товаров более 7-10.000 товаров - открытие Категорий занимает по 10-20 секунд, выборка с помощью MegaFilter занимает 15-25 секунд. Создание индексов, попытка настроить MySQL, nginx и различные системы кэширования и др. оптимизация не дает пока заметных результатов.

Кто-то может уже поделиться опытом успешного запуска OC 2.x на PHP7 ?
 
Последнее редактирование:
Однозначно переводить на InnoDB, + настраивать нормальное кэширование и сами переменные InnoDB. В идеале - чтобы если данные в базе после перевода в инно весят, скажем 500мб - чтобы под mysql в частности под innodb_buffer_pool делать больше чем общий размер базы. тогда оно все будет висеть в памяти.
MyISAM хорошо, но есть один очень существенный недостаток - это лок таблицы при обновлении или вставке. Отсюда могут и быть серьезные тормоза. Т.к. даже заход на карточку товара - вызывает обновление строки в таблице oc_products - а точнее поле viewed у просмотренного товара. И на каждое такое обновление - будет лочиться вся таблица, что совсем не фонтан. В случае с InnoDB - там работает Row Lock. т.е. лочится не таблица а строка.
Ну, и в идеале - nginx+php-fpm.

Отрицательные моменты от перевода на Инно - физический размер базы может удвоиться. На простейших операциях - myisam может работать быстрее, как показывает практика. Но, практика так же показывает - достаточно частые краши таблиц у myisam.

P.S. У меня - используется VPS, 3 ядра xeon, 3гб рам. в базе 19 тысяч товаров. фильтр - мегафильтр про. Софт - php-fpm 7.1, nginx, mysql innodb, пул 1гб, вес базы около 700-800мб (очень много атрибутов на каждый товар), сессии - в мемкэше, диск - ssd. Да, и шаблон - Journal 2 - который сам по себе не легкий. Никаких тормозов нет вообще, ни в админке, ни на самом сайте. Начальная отдача контента укладывается в 0.5с. Около 1000 человек в сутки сейчас.
 
Последнее редактирование:
Думаю сайт можно ускорить применив изображения в формате WebP. Разница с jpg в несколько раз, не уступая в качестве. Однако мне не удалось его втюхать в опенкарт. Нужно в коде добавлять поддержку формата.
 
:) А как у него с поддержкой браузеров? В мире есть чуть больше браузеров и устройств, чем Хром и Опера. :) И ускорить что? Время отдачи контента? Генерации страницы? Кэширования картинок? Формат изображений на общую скорость работы сайта на опенкарте в данном случае - играет одну из последних ролей.
 
У меня после импорта товаров, слетают похоже товары (в админке "Товары для варианта")
Может у кого было такое?
С настройками играл в разных вариациях - не помогло.
 
Модуль кэширования для OpenCart 2.3.x ocStore 2.3.x использующий библиотеку phpFastCache.

Хотелось бы услышать отзывы о работе - как оно.
 

Вложения

  • module_cahe.zip
    122,2 KB · Просмотры: 36
У меня после импорта товаров, слетают похоже товары (в админке "Товары для варианта")
Может у кого было такое?
С настройками играл в разных вариациях - не помогло.

А вы экспортируете\импортирует с этим заполненым полем?
Возможно просто импортируете пустые поля в этом столбике - оно и слетает.
 
Хотелось бы узнать тех. данные по производительности и железо на котором все это стоит ( +хосты и товары).
Сейчас думаю стоит ли переходить на OC с Journal, под TecDoc
 
Про..шись с опенкартом вот уже года два, написав около трех десятков модулей и модификаторов к этой "поделке", детально узнав его внутреннюю структуру и работу - опенкарт я буду рекомендовать в лучшем случае злейшему врагу (и при этом, мне его будет жалко). Более глупого и непродуманного кода и структуры я не встречал.
А запускать такого монстра как ТекДок на опенкарте (подозреваю, что переносить базу в структуру опенкарта) - лучше сразу прострелить себе оба колена, это будет менее больно, и на вылете будет примерно тот же результат.

Я очень жалею, что два года назад, когда мы по глупости выбрали опенкарт основываясь на "советах" и "все быстро и просто" - я не нашел этот пост Для просмотра ссылки Войди или Зарегистрируйся - куда в итоге в коменты пришел автор опенкарта, и показал, что он из себя представляет, заодно блеснув знаниями, и тем, что в своем развитии он остановился на уровне 1999 года. Только, сейчас я уже вижу, что в том посте не раскрывается и половины того говна и палок, из которых состоит опенкарт.
 
Про..шись с опенкартом вот уже года два, написав около трех десятков модулей и модификаторов к этой "поделке", детально узнав его внутреннюю структуру и работу - опенкарт я буду рекомендовать в лучшем случае злейшему врагу (и при этом, мне его будет жалко). Более глупого и непродуманного кода и структуры я не встречал.
А запускать такого монстра как ТекДок на опенкарте (подозреваю, что переносить базу в структуру опенкарта) - лучше сразу прострелить себе оба колена, это будет менее больно, и на вылете будет примерно тот же результат.

Я очень жалею, что два года назад, когда мы по глупости выбрали опенкарт основываясь на "советах" и "все быстро и просто" - я не нашел этот пост Для просмотра ссылки Войди или Зарегистрируйся - куда в итоге в коменты пришел автор опенкарта, и показал, что он из себя представляет, заодно блеснув знаниями, и тем, что в своем развитии он остановился на уровне 1999 года. Только, сейчас я уже вижу, что в том посте не раскрывается и половины того говна и палок, из которых состоит опенкарт.
На чем сейчас работаете / планируете переходить? Важным также является долгосрочная перспектива
 
Назад
Сверху