Мы уже рассказывали об этом проекте в общем SEO-кейсе, где кратко упоминали техническую оптимизацию сайта. Однако большая часть выполненных работ осталась за рамками публикации. В этом материале подробно разбираем весь комплекс технических доработок: от выбора серверной инфраструктуры до оптимизации базы данных, фронтенда и системы кэширования. Показываем, какие решения были внедрены и каких результатов удалось добиться.
Тематика: продажа и сервисное обслуживание прицепов и полуприцепов российских и зарубежных производителей.
Регион продвижения: Москва.
Период работ: с мая 2021 года.
«1С-Битрикс» относится к ресурсоемким CMS. Производительность системы напрямую зависит от того, насколько быстро сервер способен обрабатывать PHP-код, выполнять SQL-запросы и отдавать HTTP-ответы пользователям.
При подборе инфраструктуры основной акцент сделали не на количестве ядер, а на высокой тактовой частоте процессора. Причина проста: значительная часть операций внутри «Битрикса» выполняется в одном потоке. Поэтому именно частота CPU становится одним из ключевых факторов скорости обработки запросов.
Во время работы сайта одновременно задействуются несколько компонентов:
Во всех этих сценариях высокая частота процессора позволяет уменьшить время выполнения операций. Дополнительно при выборе оборудования учитывался объем кэша L3: большой кэш ускоряет доступ к часто используемым данным и снижает задержки при обработке запросов.
В результате было принято решение отказаться от предыдущего хостинга в пользу сервера с более подходящими характеристиками.
До:
После:
Такое изменение стало базой для последующей технической оптимизации сайта.
Одной из самых серьезных причин медленной загрузки оказались изображения. Они создавали большое количество HTTP-запросов, значительно увеличивали объем передаваемых данных и ухудшали показатели PageSpeed.
Работа проводилась поэтапно.
Сначала был выполнен полный анализ изображений, размещенных на сайте. Проверили:
В результате нашли множество файлов с избыточным разрешением и неоптимальными форматами хранения.
Для хранения графики были выбраны современные форматы WebP и JPEG 2000.
Формат WebP обеспечивает значительно более эффективное сжатие по сравнению с JPEG и PNG, сохраняя качество изображения. Он поддерживает как сжатие с потерями, так и без потерь.
JPEG 2000 использовался для изображений высокого разрешения, где требовалось сохранить качество при существенном уменьшении размера файлов.
Было:
Стало:
После конвертации удалось существенно уменьшить количество загружаемых данных и число сетевых запросов. Время загрузки страницы сократилось примерно с 14 секунд до 0,6 секунды.
Конвертация выполнялась средствами командной строки через cwebp, установленный на сервере с CentOS и интегрированный в окружение «1С-Битрикс».
Следующим этапом стало дополнительное сжатие всех изображений.
Для обработки использовались:
Настройки подбирались таким образом, чтобы максимально уменьшить размер файлов без заметной потери качества.
Например, фотографию объемом около 2 МБ удалось уменьшить примерно до 150 КБ, сохранив визуальное качество изображения.
Каждое изображение было приведено к фактическим размерам, необходимым для отображения на сайте.
Вместо загрузки фотографий «с запасом» были подготовлены версии, соответствующие размерам блоков и карточек товаров. Это позволило исключить передачу лишних данных пользователю.
Для повторных посещений сайта была настроена система кэширования графики.
На сервере и в браузере пользователей добавили заголовки:
Благодаря этому изображения сохраняются локально и не загружаются повторно при каждом открытии страниц.
Чтобы проблема не возникала снова, процесс сделали автоматическим.
Теперь каждое новое изображение при загрузке проходит обработку по заданным правилам: проверяется формат, выполняется конвертация и применяется необходимое сжатие.
Дополнительно внедрен контроль качества, который не позволяет публиковать изображения, не соответствующие установленным требованиям.
В процессе оптимизации применялись несколько специализированных решений.
Комплексная переработка медиатеки позволила добиться сразу нескольких эффектов:
До оптимизации:
После оптимизации:
По данным Google PageSpeed Insights производительность сайта выросла с 27 до 100 баллов.
Важно, что такой результат был достигнут без использования lazy loading. Основной эффект обеспечили современные форматы изображений, корректное кэширование и автоматизация обработки медиаконтента.
После внедрения изменений страницы стали отображаться практически мгновенно, а пользователям больше не приходилось ждать загрузки тяжелых изображений перед началом работы с сайтом.
После оптимизации серверной инфраструктуры и изображений следующим узким местом стала база данных. Именно она обрабатывает большую часть операций в каталоге товаров, карточках техники, фильтрах, поиске и других разделах сайта. По мере роста проекта увеличивалось количество данных, а вместе с ним — и нагрузка на MySQL.
Целью работ было уменьшить время выполнения наиболее ресурсоемких запросов, сократить нагрузку на сервер и повысить стабильность всей системы.
Работу начали с комплексного анализа базы данных. Проверили структуру таблиц, связи между ними, существующие индексы и характер обращений со стороны сайта.
Во время аудита были выявлены несколько типичных проблем:
Такой анализ позволил определить приоритетные точки оптимизации.
Следующим этапом стало профилирование SQL-запросов с помощью журнала MySQL Slow Query Log. Это позволило увидеть запросы, которые выполнялись дольше остальных и потребляли наибольшее количество ресурсов.
Одной из причин низкой производительности оказалось отсутствие необходимых индексов.
До оптимизации:
После добавления индексов:
Добавление индексов значительно сократило время поиска данных и уменьшило нагрузку при выполнении повторяющихся выборок.
Еще один пример касался вывода элементов инфоблока на странице.
До оптимизации запрос получал значительно больше данных, чем было необходимо.
После переработки:
Логика выборки была изменена таким образом, чтобы обращаться только к тем данным, которые действительно используются при формировании страницы. Вместо загрузки полного набора записей выполнялась точечная выборка необходимых полей.
Такой подход позволил ускорить выполнение отдельных операций до 300% по сравнению с первоначальной реализацией.
Помимо индексации были переписаны наиболее тяжелые SQL-конструкции.
В ходе оптимизации:
В результате база данных стала выполнять меньше лишней работы при каждом обращении пользователя к сайту.
Отдельным этапом стала работа с индексами.
Сначала проанализировали уже существующие индексы и оценили, какие из них реально используются системой, а какие лишь увеличивают объем базы и замедляют операции записи.
После анализа были выполнены следующие изменения:
Это позволило ускорить выборки без увеличения нагрузки на запись данных.
Следующий этап касался самой структуры хранения данных.
Были проанализированы таблицы на предмет избыточности и соответствия нормальным формам проектирования баз данных. Там, где это повышало эффективность, структура была переработана.
Выполненные изменения включали:
Такой подход помог сократить объем операций при обращении к базе.
Со временем в базе накопилось большое количество информации, которая практически не использовалась в ежедневной работе сайта.
Чтобы уменьшить объем активной базы данных, была внедрена система архивирования.
В рамках этой задачи:
В результате рабочая база стала компактнее, а операции с актуальными данными — быстрее.
Еще одним источником задержек стали соединения с базой данных и длительные транзакции.
Для повышения стабильности были оптимизированы параметры подключения к MySQL и переработана логика работы транзакций.
Основные изменения:
Это снизило вероятность взаимных блокировок и повысило устойчивость системы под нагрузкой.
Значительная часть запросов на сайте повторяется многократно. Например, карточки товаров, списки категорий или блоки каталога часто запрашиваются без изменений.
Чтобы не выполнять одинаковые вычисления каждый раз, настроили кэширование запросов.
Использовались два уровня кэширования:
Также была реализована стратегия автоматического обновления и очистки кэша после изменения данных.
Фактически система стала сохранять уже подготовленный результат выполнения сложных скриптов. При повторном обращении пользователь получает готовую HTML-страницу или подготовленные данные значительно быстрее, без повторного выполнения всех вычислений.
Например, после изменения стоимости товара страница один раз формируется заново и сохраняется в кэш. Все последующие посетители получают уже подготовленную версию страницы, что существенно ускоряет ее загрузку.
Оптимизация коснулась и параметров самой СУБД.
Были пересмотрены настройки, влияющие на производительность сервера базы данных, включая:
Кроме того, настроили регулярную проверку состояния таблиц и их дефрагментацию для поддержания стабильной производительности.
После завершения всех изменений провели повторное тестирование производительности базы данных и сравнили показатели с исходным состоянием.
До оптимизации:
После оптимизации:
Самые ресурсоемкие SQL-запросы стали выполняться значительно быстрее. Это позволило уменьшить нагрузку на сервер базы данных и ускорить формирование страниц сайта.
Дополнительно улучшилась общая стабильность работы проекта, поскольку база данных стала эффективнее использовать ресурсы сервера и быстрее обслуживать пользовательские запросы.
После оптимизации серверной части и базы данных следующим этапом стала переработка фронтенда. Анализ показал, что значительная часть времени загрузки страницы терялась из-за избыточной верстки, неиспользуемых стилей, тяжелых JavaScript-файлов и блокирующих ресурсов.
Работы охватили HTML-разметку, CSS, JavaScript и порядок загрузки ресурсов. Основная задача заключалась в том, чтобы уменьшить объем передаваемых данных, сократить количество HTTP-запросов и ускорить первую отрисовку страниц.
Первым этапом стал аудит HTML-разметки сайта.
Были проверены шаблоны страниц, компоненты «1С-Битрикс» и автоматически генерируемый код. В процессе анализа обнаружили большое количество лишних элементов, устаревших атрибутов и повторяющихся конструкций, которые увеличивали объем документа, но не влияли на функциональность.
В рамках оптимизации:
В результате HTML-код стал компактнее, понятнее и быстрее обрабатывался браузером.
Следующим этапом провели полный аудит таблиц стилей.
На сайте накопилось большое количество CSS, часть которого уже не использовалась после обновлений дизайна и функционала. Кроме того, отдельные стили подключались несколько раз или дублировали друг друга.
Работы включали:
Для минификации использовали специализированные инструменты, включая CSSNano.
После переработки объем CSS сократился, а количество HTTP-запросов при загрузке страницы уменьшилось.
JavaScript также стал одним из ключевых направлений оптимизации.
Во время аудита проверили все подключенные библиотеки, пользовательские скрипты и компоненты «1С-Битрикс». Часть файлов давно не использовалась, некоторые выполняли одинаковые функции, а часть подключалась на страницах, где вообще не требовалась.
В ходе работ:
Отдельное внимание уделили способу загрузки скриптов.
Для ресурсов, не влияющих на первоначальное отображение страницы, использовали атрибут async, чтобы они загружались параллельно и не блокировали построение страницы.
Для остальных сценариев внедрили загрузку через defer, позволяющую браузеру сначала построить DOM, а затем выполнить JavaScript.
Такой подход сократил время блокировки основного потока и ускорил отображение интерфейса.
Одной из задач было уменьшить время появления первого контента на экране пользователя.
Для этого реализовали технологию Critical CSS.
Критически важные стили, необходимые для отображения первого экрана, были встроены непосредственно в HTML-документ. Остальные стили загружались позже, уже после начала отображения страницы.
Дополнительно пересмотрели порядок подключения CSS и JavaScript, чтобы убрать ресурсы, блокирующие рендеринг.
Это позволило браузеру быстрее приступить к построению страницы и значительно сократить время первой отрисовки.
После оптимизации структуры фронтенда настроили хранение статических файлов в кэше браузера.
Для CSS, JavaScript, изображений и других статических ресурсов были заданы заголовки Cache-Control и Expires. Благодаря этому повторные посещения сайта происходят значительно быстрее — браузер использует локально сохраненные файлы вместо повторной загрузки.
Отдельно оптимизировали подключение веб-шрифтов.
Для них использовали свойство font-display: swap, которое устраняет задержку отображения текста. Пользователь сначала видит текст системным шрифтом, а после загрузки веб-шрифта происходит незаметная замена без пустых областей на странице.
Комплексная переработка HTML, CSS и JavaScript дала сразу несколько результатов.
Во-первых, заметно уменьшился общий размер страниц за счет удаления лишнего кода и минификации ресурсов.
Во-вторых, сократилось количество HTTP-запросов, необходимых для полной загрузки страницы.
В-третьих, страницы стали быстрее открываться как на десктопных устройствах, так и на смартфонах, а показатели Google PageSpeed существенно улучшились.
По данным административной панели «1С-Битрикс» изменения были заметны и во внутренних метриках производительности системы.
До оптимизации:
После оптимизации:
Ускорение первой отрисовки и уменьшение объема ресурсов положительно сказались не только на скорости загрузки, но и на пользовательском опыте: интерфейс начал отображаться быстрее, страницы стали отзывчивее, а взаимодействие с каталогом — комфортнее.
Следующим этапом стала настройка системы кэширования Memcached. Цель — сократить количество обращений к базе данных и ускорить генерацию страниц за счет хранения часто используемых данных в оперативной памяти сервера.
Для проектов на «1С-Битрикс» это особенно важно, поскольку CMS регулярно выполняет множество однотипных SQL-запросов при формировании каталога, карточек товаров, меню и других элементов сайта.
До внедрения кэширования каждая загрузка страницы сопровождалась повторным выполнением большого количества запросов к базе данных. Даже если информация не менялась, сервер заново выполнял вычисления и формировал один и тот же результат.
Это увеличивало нагрузку на MySQL и замедляло отклик сайта при высокой посещаемости.
Использование Memcached позволило хранить результаты часто выполняемых запросов в памяти сервера и выдавать их без повторной обработки.
На сервере развернули и настроили службу Memcached, после чего интегрировали ее с «1С-Битрикс».
В процессе настройки выполнили следующие работы:
Отдельно настроили мониторинг работы Memcached на уровне операционной системы CentOS.
Мониторинг позволял отслеживать использование оперативной памяти, количество подключений, эффективность кэша и другие технические показатели.
После внедрения Memcached логика формирования страниц изменилась.
Когда пользователь впервые открывает страницу товара после изменения данных, сайт полностью выполняет необходимые скрипты, обращается к базе данных и формирует HTML.
Полученный результат сохраняется в кэш.
Все последующие посетители получают уже подготовленную версию страницы, которая хранится в оперативной памяти. Благодаря этому серверу не нужно заново выполнять весь набор SQL-запросов и PHP-логики.
Такой механизм особенно эффективен для каталога товаров и других разделов с большим количеством повторяющихся запросов.
Использование Memcached позволило заметно сократить время ответа сервера.
Основные результаты:
В совокупности с предыдущими этапами оптимизации это стало еще одним фактором роста общей производительности проекта и ускорения загрузки страниц.
После оптимизации серверной части, базы данных и фронтенда работа продолжилась над теми элементами, которые напрямую влияют и на производительность, и на пользовательский опыт. Часть задач была связана с удалением лишних библиотек и скриптов, другая — с развитием функциональности каталога и карточек товаров.
Такой подход позволил одновременно сократить техническую нагрузку на сайт и улучшить коммерческие факторы, которые влияют на поведение пользователей и поисковую выдачу.
Во время аудита производительности выяснилось, что сайт подключает несколько внешних библиотек, которые уже не используются или дублируют друг друга. Несмотря на отсутствие практической пользы, они продолжали загружаться вместе со страницами, увеличивая объем данных и время выполнения JavaScript.
Сначала проанализировали все внешние зависимости проекта.
Для этого использовали инструменты разработчика в браузере, проверили шаблоны «1С-Битрикс», конфигурационные файлы и исходный код проекта. Анализ показал, какие библиотеки реально участвуют в работе интерфейса, а какие остались после предыдущих доработок или экспериментов.
После аудита определили несколько категорий лишних ресурсов:
Все такие зависимости стали кандидатами на удаление.
На следующем этапе неиспользуемые библиотеки были полностью отключены и удалены из проекта.
Изменения затронули:
Дополнительно убрали все ссылки на удаленные библиотеки, чтобы браузер больше не выполнял лишние запросы.
Те библиотеки, которые действительно необходимы для работы сайта, также были оптимизированы.
Для них:
Это позволило уменьшить общий объем JavaScript без потери функциональности.
После очистки проекта сократилось количество подключаемых файлов и объем данных, передаваемых пользователю.
В результате:
Дополнительным эффектом стало снижение потенциальных рисков безопасности, связанных с использованием устаревших сторонних библиотек.
Техническая оптимизация не ограничилась ускорением работы сайта. Следующий блок задач был направлен на повышение удобства использования каталога, улучшение взаимодействия пользователей с карточками товаров и расширение функциональности, влияющей на доверие и конверсию.
Одной из задач стало улучшение отображения сайта на смартфонах и планшетах.
Была переработана адаптивная верстка, чтобы страницы корректно отображались на устройствах с различными разрешениями экранов, включая минимальную ширину 320 пикселей, соответствующую рекомендациям поисковых систем.
В ходе работ:
До оптимизации:
После оптимизации:
В результате интерфейс стал удобнее на мобильных устройствах, а элементы управления сохранили корректные размеры и расположение даже на небольших экранах.
На карточках техники существовала проблема с выгрузкой спецификаций.
Ранее все товары использовали одну общую ссылку. При нажатии документ генерировался заново и открывался в новом окне. Если пользователь делился такой ссылкой, другой человек мог получить уже другую спецификацию — например, сформированную для другого товара.
До изменений:
Алгоритм генерации документов был полностью переработан.
После оптимизации:
Теперь каждая карточка товара получает собственную уникальную ссылку на спецификацию.
Пользователь может скачать документ или отправить ссылку другому человеку без риска получить некорректный файл.
Следующим улучшением стала система оценки товаров.
Ранее карточки техники не содержали рейтингов и не позволяли пользователям оставлять оценки.
До внедрения функциональности:
После доработки появилась полноценная система рейтингов.
Для каждой карточки реализовали:
Это сделало карточки более информативными и добавило социальное подтверждение при выборе техники.
Одновременно с рейтингами появился механизм публикации отзывов.
Раньше пользователи не могли оставить мнение о товаре непосредственно на сайте.
До реализации:
После внедрения:
Функциональность включает:
Все отзывы проходят модерацию через административную панель «1С-Битрикс». Для администраторов настроили уведомления о новых публикациях, чтобы оперативно проверять и размещать отзывы.
При этом блок «Похожая техника» сохранили без изменений, чтобы не ухудшить навигацию внутри каталога.
Еще одним направлением стала актуализация микроразметки сайта.
В карточках товаров и других разделах внедрили разметку Schema.org, которая помогает поисковым системам корректно интерпретировать содержимое страниц.
Обновили разметку для:
Пример реализации:
После внедрения микроразметку проверили с помощью инструментов Google Structured Data Testing Tool и Bing Webmaster Tools.
Валидация подтвердила корректность структуры данных и отсутствие критических ошибок.
Отдельной задачей стала переработка информационной страницы, посвященной покупке техники в кредит и лизинг.
До оптимизации страница содержала устаревший дизайн и менее удобную структуру подачи информации.
До изменений:
После переработки:
Страница получила новый дизайн, более понятную структуру контента и улучшенную навигацию, благодаря чему пользователям стало проще находить необходимую информацию о финансовых условиях покупки техники.
Для повышения доверия пользователей и соответствия требованиям законодательства на сайте появился полноценный раздел юридической информации.
Были подготовлены и опубликованы страницы:
Ссылки на документы разместили в подвале сайта и в соответствующих разделах интерфейса.
Завершающим этапом стала доработка раздела новостей.
Изменения затронули оформление публикаций и структуру отображения материалов.
Выполненные работы:
Раздел стал выглядеть более структурированным, а пользователям стало проще ориентироваться в новых публикациях и понимать актуальность материалов.
Этот проект показал, что эффективность SEO зависит не только от контента, ссылочного профиля или внешней оптимизации. Существенную роль играет техническое состояние сайта: скорость работы, качество кода, архитектура базы данных, корректная настройка кэширования и удобство пользовательского интерфейса.
Оптимизация проводилась комплексно и затронула все ключевые уровни проекта. Была обновлена серверная инфраструктура, переработаны тяжелые SQL-запросы, настроено кэширование, оптимизированы изображения и фронтенд, а также улучшены коммерческие элементы каталога и карточек товаров.
В техническом SEO важно не искать одну универсальную точку ускорения. Результат дает именно комплексная работа: сервер, база данных, изображения, код и кэширование должны быть настроены как единая система. Даже небольшие оптимизации на каждом уровне в сумме дают существенное сокращение времени загрузки и нагрузки на сайт.
Такой подход позволил получить измеримые результаты:
Технические изменения повлияли не только на производительность, но и на поведение пользователей. Более быстрая загрузка страниц сократила время ожидания, адаптивный интерфейс сделал работу с каталогом удобнее на мобильных устройствах, а рейтинги, отзывы, корректные спецификации и обновленная микроразметка повысили информативность карточек товаров и улучшили их представление в поисковой выдаче.
Итогом проекта стало создание технической базы, которая одновременно решает две задачи: обеспечивает комфортную работу пользователей и создает условия для более эффективного поискового продвижения. Именно сочетание производительности, стабильности и качественной внутренней оптимизации позволяет сайту лучше конкурировать в поисковой выдаче и поддерживать дальнейший рост органического трафика.