+7 (495) 665-32-37

9
298

Как за 28 часов ускорить сайт в 10 раз

Криво сделанный сайт на Битриксе - мучение для его владельца. Особенно это хорошо проявляется, когда над сайтом работают разные исполнители, часть из которых слабо понимает, как делать правильно, или же берет по дешевке, поэтому ставит костыли. Поэтому важно, чтобы сайтом занимался кто-то один, именно поэтому мы настаиваем на техподдержке сайта. Экономия на техподдержке стоила в этом случае 28 часов чистого времени работы программиста. Если же считать сколько работал весь отдел, включая обсуждения - выйдет более недели работы.  

Описание деятельности заказчика 

Интернет-магазин светильников и товаров для дома. Заказчик имеет старый сайт, с уже неплохой посещаемостью, но очень медленно работающий (скорость загрузки страницы более 6 секунд). Невозможно даже нормально работать с админке, и наш парсер, который мы делали ранее - тоже работал долго:
Скорость сайта - Luveks.ru - Google Chrome.jpg

Какие виды работ были сделаны 

Программные работы и тестирование,
Работы по ускорению сайта,
Консультирование

Задача

Была поставлена задача насколько возможно увеличить скорость загрузки Главной страницы и страниц каталога: страницы раздела и страницы товара. Были проведены следующие работы:

Верхнее меню каталога

image6.png

Провели оптимизацию верхнего меню каталога. Исправили функцию вывода динамических данных в меню, убрали вывод лишних данных. Исправили кэширование меню.

Главная страница

Оптимизировали вывод блоков на Главной - Новинки, Акции, Хиты продаж:

image11.png

Сделали правильную фильтрацию по свойству, по которому товары добавляются в блоки, написали свой компонент, который выводит не все свойства товаров в массиве данных (в коде страницы), а только нужные. За счет этого сократили количество загружаемого кода.

Страница раздела каталога

Здесь также подключили свой компонент, который выводит не все свойства товаров в массиве данных (в коде страницы), а только нужные. Уменьшили кол-во товаров выводимых по умолчанию на странице раздела (было 60 по умолчанию):

image8.png

Полностью переписали фильтр по внешнему виду:

image4.png

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

Левое меню каталога

image5.png

До начала работ в меню (в коде страницы) выводились сразу все разделы сайта, ненужные просто скрывались (в код выводилось 400, а отображалось 40), сейчас в коде выводятся только нужные. Также переделали подключение скриптов и стилей в шаблоне - код подключения был нестандартный, и Битрикс неправильно их объединял, подключили стандартный, сократили время загрузки стилей и скриптов. Настроили правильное кэширование во всех компонентах. Была проведена работа по настройке сервера: установлен прекомпилятор, скорректирован конфиг сервера БД для устранения ошибок по монитору производительности сервера БД:

803ccc20a0.png

обновлен MariaDB (установили версию 10.5.1-MariaDB MariaDB Server).

Что получили в итоге

Сравнение скорости загрузки по монитору Битрикс.

Главная - до начала работ - загрузка больше 2 сек.:

image3.png

После оптимизации - загрузка меньше 0,5 сек.:

image2.png

Страница раздела каталога - до начала работ - загрузка больше 5 сек.:

image1.png

После оптимизации - загрузка меньше 0,5 сек.:

image9.png

Страница товара - до начала работ - загрузка больше 3 сек.:

image7.png

После оптимизации - загрузка меньше 0,3 сек.:

image10.png


Дата проведения работ 

2020 г. 

Адрес сайта


luveks.ru

Похожие работы