+7 (495) 665-32-37

Заказать звонок
Заказать звонок
Назад в портфолио

Как мы обновили и ускорили в 18 раз сайт по продаже светодиодного освещения, потратив всего 60 часов

Как мы обновили и ускорили в 18 раз сайт по продаже светодиодного освещения, потратив всего 60 часов
В середине августа 2023 года к нашей команде обратилась компания ООО "ЛЕДКОМП" с запросом на оптимизацию работы их интернет-магазина

О проекте

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

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

Проблема заказчика

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

Кроме того, сайт работал на устаревшей версии PHP, что не только ограничивало его функциональность, но и создавало потенциальные уязвимости в безопасности. Также заказчик отмечал, что система управления сайтом 1С-Битрикс и сторонние модули давно не обновлялись, что также могло негативно сказываться на производительности и безопасности ресурса.

Задачи

Учитывая эти проблемы, руководство ООО "ЛЕДКОМ" поставило перед нами три ключевые задачи:
  • Значительно увеличить скорость загрузки страниц сайта, особенно в моменты сброса кеша.
  • Перевести сайт на актуальную версию PHP 8.1.
  • Установить все доступные обновления для системы управления 1С-Битрикс и используемых сторонних модулей.

План работ

Для решения поставленных задач мы разработали комплексный план работ, который включал в себя следующие этапы:
  • Проведение детального аудита типовых страниц сайта для выявления "узких мест" в производительности.
  • Оптимизация наиболее проблемных страниц на основе результатов аудита.
  • Перевод сайта на PHP 8.1 с последующим исправлением возникших ошибок.
  • Обновление системы управления 1С-Битрикс и сторонних модулей.
  • Финальная оптимизация после обновления системы.

Аудит

Приступив к реализации плана, мы начали с тщательного аудита типовых страниц сайта. Особое внимание было уделено главной странице и разделам каталога, так как именно эти страницы показывали наихудшие результаты по скорости загрузки. Для анализа мы использовали встроенный модуль отладки 1С-Битрикс, который позволил нам получить детальную информацию о времени выполнения SQL-запросов, объеме кеша и общем времени генерации страниц.

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

Например, главная страница при отключенном кешировании загружалась более 5 секунд и генерировала почти 3000 SQL-запросов

Фото Главная страница при отключенном кешировании загружалась более 5 секунд


Особенно "тяжелым" оказался компонент меню, который создавал более 1500 запросов к базе данных. 

Фото Компонент меню создавал более 1500 запросов к базе данных


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

Фото Страницы каталога


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

Решение

Этап 1. Оптимизация

На основе полученных данных мы приступили к оптимизации. Первым делом мы обратили внимание на компонент меню, который явно нуждался в переработке. Мы оптимизировали алгоритм построения древовидной структуры меню, что позволило значительно сократить количество запросов к базе данных, с 1500 до 3. 

Фото Оптимизировали алгоритм построения древовидной структуры меню

Далее мы занялись оптимизацией каталога товаров. Мы пересмотрели логику работы фильтров и сортировки, оптимизировали запросы к базе данных для получения информации о товарах и их ценах. Общее кол-во запросов удалось снизить с 2300 до 627 

Фото Пересмотрели логику работы фильтров и сортировки

Также мы уменьшили количество товаров, отображаемых на одной странице, с 40 до 24, что позволило снизить нагрузку на сервер без существенного ухудшения пользовательского опыта.

Отдельное внимание было уделено оптимизации кеширования. Мы пересмотрели стратегию кеширования, уменьшив объем кешируемых данных и оптимизировав процесс обновления кеша. Это позволило снизить нагрузку на дисковую подсистему сервера и ускорить работу сайта даже в моменты сброса кеша.

Этап 2. Перевод работы сайта на PHP 8

После завершения первичной оптимизации мы приступили к переводу сайта на PHP 8.1. Этот процесс потребовал тщательного тестирования и отладки, так как некоторые компоненты и модули оказались несовместимы с новой версией PHP. Мы провели необходимые доработки кода, чтобы обеспечить стабильную работу всех функций сайта на новой версии языка.

Этап 3. Обновление системы управления 1С-Битрикс

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

Этап 4. Финальная оптимизация

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

Результат

В результате проведенных работ скорость загрузки страниц значительно увеличилась. Например, время загрузки главной страницы сократилось с 5,4 секунд до 0,3 секунд, а количество SQL-запросов уменьшилось с 2905 до 812.

Фото Скорость загрузки страниц значительно увеличилась

Перевод сайта на PHP 8.1 и обновление системы управления не только повысили безопасность ресурса, но и открыли возможности для использования новых функций и оптимизаций, доступных в современных версиях PHP и 1С-Битрикс.

Заказчик остался доволен результатами работы. Улучшение скорости работы сайта привело к увеличению времени, проводимого посетителями на сайте, и, как следствие, к росту конверсии. Обновленная система управления сайтом стала работать стабильнее.

Сайт заказчика

Подпишитесь на наш канал в Телеграме и получайте обновления наших работ и полезные материалы сразу после выхода!

Яндекс.Метрика