Установили последнюю версию Bitrix, убыстрили загрузку веб-сайта и на 26% превысили эталонную производительность

Если вы увидели, что веб-сайт стал работать медлительнее, может быть, самое время обновить CMS. В кейсе рассказываем, как нам в MediaNation удалось убыстрить работу и производительность веб-сайта Consul, с какими неуввязками столкнулись в процессе и как боролись с проактивной защитой Bitrix.

Клиент

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

Неувязка: устаревший веб-сайт

В первый раз Consul обратился в MediaNation в 2015 году. Тогда мы разработали интернет-магазин, который посодействовал компании вырасти и прирастить бизнес.

С течением времени требования к удобству использования интернет-магазином росли, и в 2019-2021 гг. мы провели серьезную модернизацию веб-сайта, разработали адаптивную верстку и ввели новейший функционал. В итоге удалось в 5 раз прирастить количество гостей веб-сайта, в 4,5 раза прирастить доход и практически в 2 раза уменьшить показатель отказов.

Но за прошедшее время платформа для разработки на базе Bitrix и версия PHP, которая использовалась на сервере, успела устареть, и веб-сайт стал работать осязаемо медлительнее. В 2023 году Consul опять обратился в агентство с задачками:

  • Обновить платформу Bitrix до крайней версии 8.1.
  • Обновить версию PHP до версии 8.1.

Решение

Чтоб решить делему с неспешной загрузкой страничек веб-сайта, нужно было не попросту установить критичные обновления платформы Bitriх, да и поднять версию PHP на сервере c 7.4 до 8.1, так как в данной нам версии находится оптимизация, которая улучшает производительность веб-сайта.Она совместима с наиболее новенькими версиями библиотек и фреймворков. Наиболее того, некие библиотеки и фреймворки поддерживают лишь наиболее новейшие версии PHP, потому обновление до крайних версий помогает обеспечить лучшую сопоставимость.

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

Мы соображали, что в так глобальном обновлении работа всего веб-сайта и модулей быть может нарушена. Как раз с сиим мы и столкнулись: было нереально предсказать, работа каких модулей будет нарушена и как стремительно мы сможем вернуть работоспособность. В процессе обновления узнали, что не все присоединенные модули обновлены, и далековато не они все приспособлены под освеженное ядро. Обо всех челленджах рассказываем ниже в кейсе.

1-ый шаг: перевели сервер на PHP 8.1

Обычная процедура по обновлению PHP вылилась в ряд некритических ошибок, которые мы стремительно поправили:

2-ой шаг: обновили тестовый веб-сайт

Все работы делали на тестовом веб-сайте. Лишь убедившись, что ошибки стопроцентно устранены, перенесли обновления на главный веб-сайт.

Этот шаг был наиболее большим и принципиальным. Обновление платформы на тестовом веб-сайте повлекло за собой критичные для работы веб-сайта ошибки.

К примеру:

1. В неких компонентах пропала информация о ценах.

По мере исследования задачи узнали, что на новейшей версии платформы не были доступны характеристики, которые клиент употреблял для отображения цен на веб-сайте: PRICES и MIN_PRICE. Лишь спустя некоторое количество дней переговоров с технической поддержкой Bitrix мы узнали, что сейчас для вывода массива с ценами PRICES нужно применять доп параметр в настройке компонента: «COMPATIBLE_MODE» => «Y»

2. В административной части веб-сайта закончили отображаться некие модули.

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

Часть модулей просто не отображалась

3. В общественной версии веб-сайта заместо настоящей цены в карточках продуктов отображалось «0 руб.»

Проанализировав веб-сайт, мы узнали, что опосля обновления срабатывала проактивная защита Bitrix. Это была самая нежданная неувязка, с которой пришлось столкнуться. Далековато не все создатели имели с ней дело, и обычного решения не было. Опосля детализированного всестороннего исследования мы смогли настроить модуль проактивной защиты таковым образом, чтоб не блокировался веб-сайт.

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

  • Настроили правила модуля защиты: для этого необходимо открыть административную панель Bitrix и перейти в раздел «Опции» либо «Опции продукта». В разделе сохранности либо проактивной защиты (Proactive Protection) необходимо проверить опции и правила модуля, а потом установить их так, чтоб они не блокировали работу веб-сайта при обнаружении возможных угроз.
  • Провели логирование и мониторинг: мы включили логирование модуля защиты, чтоб выслеживать действия и ошибки. Это посодействовало бы выявить, какие определенные запросы либо деяния приводят к блокировке, и настроить правила подходящим образом.
  • Обновили модуль: в новейших версиях были бы улучшения и исправления, которые улучшили бы сопоставимость с крайними версиями PHP.

3-ий шаг: Обновили главный веб-сайт consul-coton.ru

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

Результаты

Опосля обновления веб-сайт стал работать резвее. А за счет критичных обновлений платформы Bitrix CMS стала наиболее защищенной и устойчивой.

Характеристики работы веб-сайта затмили все ожидания: производительность стала на 26% выше эталонной. Это значит, что веб-сайт работает эффективнее, чем того ждут юзеры либо устанавливают отраслевые эталоны.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *