OpenCart Доработки и ошибки

gmr-gifts.ru - ускорение категорий OpenCart

Оптимизация SQL и индексов: ответ сервера с 6-7 с до 1.67 с

На B2B-магазине корпоративных сувениров gmr-gifts.ru медленно открывались категории и поиск. Разобрал тяжёлые SQL, добавил индексы и ускорил подгрузку данных: вместо 6-7 секунд сервер отвечает примерно за 1.67 с.

Задача

Страницы с товарами открывались медленно. Нужно было ускорить категории и поиск, чтобы переходы по каталогу не тормозили менеджеров и клиентов. До оптимизации ответ сервера занимал 6-7 секунд.

Что сделано

  • Профилирование медленных SQL на страницах категорий и поиска
  • Оптимизация запросов подгрузки товаров, фильтров и связанных данных
  • Добавление индексов в таблицы, которые тормозили выборку
  • Проверка, что долгих запросов в логе больше нет
  • Замер в браузере и контроль через Google PageSpeed

Подробнее о проекте

Каталог бизнес-сувениров

gmr-gifts.ru - B2B-витрина корпоративных подарков и мерча на OpenCart. При большом каталоге страницы категорий и поиска открывались по 6-7 секунд - для ежедневной работы с ассортиментом это критично.

Разбор тяжёлых SQL

Профилирование показало узкие места в подгрузке товаров, фильтров, скидок и связанных таблиц. Оптимизировал запросы и добавил индексы там, где выборка шла по неиндексированным полям.

Быстрее переходы по каталогу

После правок долгих запросов не осталось: по замерам в браузере ответ сервера около 1.67 с. Google PageSpeed вывел страницу категории в зелёную зону по скорости.

Каталог без ожидания

Поиск и листинг товаров стали ощутимо быстрее без смены темы и без потери функционала фильтров. Магазин остаётся тем же OpenCart, просто перестаёт тормозить на типовых страницах каталога.

Результат

  • Ответ сервера на категории ~1.67 с вместо 6-7 с
  • Долгие SQL убраны, индексы на месте
  • PageSpeed по скорости категории в зелёной зоне
Время на работу
2 дня
Стоимость
10 000 ₽
Платформа
OpenCart

У вас похожая задача?

Опишите задачу - разберу и скажу, как лучше решить и сколько это займёт.

Алексей - отвечу в течение часа