Сайт компании, специализирующейся на продаже светодиодного освещения, столкнулся с серьезными проблемами производительности, которые негативно сказывались на пользовательском опыте и, как следствие, на продажах.
Основные боль заказчика была связаны с крайне медленной загрузкой страниц сайта. Особенно остро эта проблема проявлялась при сбросе системного кеша Битрикс, что происходило регулярно, например, при обновлении цен товаров. В такие моменты время загрузки страниц резко возрастало, вызывая недовольство посетителей и потенциальную потерю клиентов.
Кроме того, сайт работал на устаревшей версии PHP, что не только ограничивало его функциональность, но и создавало потенциальные уязвимости в безопасности. Также заказчик отмечал, что система управления сайтом 1С-Битрикс и сторонние модули давно не обновлялись, что также могло негативно сказываться на производительности и безопасности ресурса.
На основе полученных данных мы приступили к оптимизации. Первым делом мы обратили внимание на компонент меню, который явно нуждался в переработке. Мы оптимизировали алгоритм построения древовидной структуры меню, что позволило значительно сократить количество запросов к базе данных, с 1500 до 3.
Далее мы занялись оптимизацией каталога товаров. Мы пересмотрели логику работы фильтров и сортировки, оптимизировали запросы к базе данных для получения информации о товарах и их ценах. Общее кол-во запросов удалось снизить с 2300 до 627
Также мы уменьшили количество товаров, отображаемых на одной странице, с 40 до 24, что позволило снизить нагрузку на сервер без существенного ухудшения пользовательского опыта.
Отдельное внимание было уделено оптимизации кеширования. Мы пересмотрели стратегию кеширования, уменьшив объем кешируемых данных и оптимизировав процесс обновления кеша. Это позволило снизить нагрузку на дисковую подсистему сервера и ускорить работу сайта даже в моменты сброса кеша.
После завершения первичной оптимизации мы приступили к переводу сайта на PHP 8.1. Этот процесс потребовал тщательного тестирования и отладки, так как некоторые компоненты и модули оказались несовместимы с новой версией PHP. Мы провели необходимые доработки кода, чтобы обеспечить стабильную работу всех функций сайта на новой версии языка.
Следующим этапом стало обновление системы управления 1С-Битрикс и всех используемых сторонних модулей до актуальных версий. Этот процесс также потребовал внимательного подхода и тестирования, чтобы убедиться, что все обновления корректно работают и не вызывают конфликтов с существующим функционалом сайта.
После завершения всех обновлений мы провели финальную оптимизацию, устранив возникшие в процессе обновления неполадки и дополнительно улучшив производительность там, где это было возможно.
В результате проведенных работ скорость загрузки страниц значительно увеличилась. Например, время загрузки главной страницы сократилось с 5,4 секунд до 0,3 секунд, а количество SQL-запросов уменьшилось с 2905 до 812.
Перевод сайта на PHP 8.1 и обновление системы управления не только повысили безопасность ресурса, но и открыли возможности для использования новых функций и оптимизаций, доступных в современных версиях PHP и 1С-Битрикс.
Заказчик остался доволен результатами работы. Улучшение скорости работы сайта привело к увеличению времени, проводимого посетителями на сайте, и, как следствие, к росту конверсии. Обновленная система управления сайтом стала работать стабильнее.