Анализ медленных запросов MySQL для 1С-Битрикс: ускорение сайта

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Анализ медленных запросов MySQL для 1С-Битрикс: ускорение сайта
Простой
~2-3 дня
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1321
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    914
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    663
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    810
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    709
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1043

Вы запускаете сайт на 1С-Битрикс, но страницы грузятся по 5–10 секунд. Клиенты уходят, менеджеры жалуются. Вы проверили хостинг, кэширование, но причина неясна. Slow query log — журнал медленных запросов MySQL — показывает настоящих виновников. Без него вы гадаете, а каждая секунда задержки стоит денег: конверсия падает, бюджет на рекламу сгорает. Мы поможем проанализировать журнал, найти самые тяжёлые запросы и оптимизировать их. За 2–3 дня вы получите отчёт и готовые решения, а экономия от ускорения окупит вложения за неделю.

В этой статье расскажем, как включить slow log, какие утилиты использовать для анализа (mysqldumpslow, pt-query-digest) и какие типичные запросы тормозят Битрикс. А главное — покажем на реальном кейсе, как после простого создания индекса время запроса упало с 3 секунд до 10 миллисекунд. Если хотите решить проблему быстро — свяжитесь с нами: проведём аудит за 1 день.

Почему медленные запросы — главная проблема Битрикс?

Основная причина — неоптимальные запросы к базе данных. Битрикс активно использует инфоблоки, свойства, торговые предложения. При большом количестве элементов без правильных индексов каждый запрос превращается в полное сканирование таблицы. Slow query log фиксирует такие запросы. Вот три типичные группы проблем:

  • Запросы к b_iblock_element без индекса по IBLOCK_ID и SORT.
  • LIKE с ведущим процентом при фильтрации.
  • COUNT(*) на b_sale_order с миллионами записей. Наш опыт: в 80% случаев достаточно добавить 2–3 составных индекса, чтобы убрать 90% медленных запросов. Это экономит бюджет на дорогостоящий апгрейд серверов.

Как включить и настроить slow query log?

В my.cnf (или my.ini на Windows):

[mysqld]
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 0.5
log_queries_not_using_indexes = 1
min_examined_row_limit = 100

long_query_time = 0.5 — запросы дольше 500 мс. Для активной диагностики ставьте 0.1 или даже 0. log_queries_not_using_indexes = 1 — ловит запросы без индексов независимо от времени. min_examined_row_limit = 100 — не логировать быстрые запросы по маленьким таблицам.

Без перезапуска MySQL можно включить динамически:

SET GLOBAL slow_query_log = 'ON';
SET GLOBAL long_query_time = 0.5;
SET GLOBAL log_queries_not_using_indexes = 1;

Подробнее о slow log можно прочитать в Wikipedia.

Как найти медленные запросы?

Сырой лог читать неудобно. Используйте утилиты агрегации:

mysqldumpslow — встроен в MySQL:

mysqldumpslow -s t -t 10 /var/log/mysql/slow.log

-s t — сортировка по суммарному времени, -t 10 — топ 10 запросов. Показывает шаблон запроса и суммарное/среднее время.

pt-query-digest (Percona Toolkit) — значительно информативнее: показывает процентиль времени выполнения, количество уникальных запросов, нагрузку на сервер.

Утилита Скорость Информативность Доп. возможности
mysqldumpslow Быстро Базовая Нет
pt-query-digest Медленнее Детальная (процентили, профили) Гибкая фильтрация, отчёты

pt-query-digest показывает не только среднее время, но и распределение — в 3 раза детальнее, чем mysqldumpslow.

Типичные медленные запросы в Битрикс

Проблема Пример SQL Решение
Полный скан каталога SELECT * FROM b_iblock_element WHERE IBLOCK_ID=5 ORDER BY SORT Составной индекс (IBLOCK_ID, SORT)
LIKE без индекса SELECT * FROM b_iblock_element_property WHERE VALUE LIKE '%поиск%' FULLTEXT индекс или MATCH AGAINST
COUNT(*) на заказы SELECT COUNT(*) FROM b_sale_order WHERE STATUS='N' Индекс по STATUS или партиционирование

Добавление индекса в первом случае снижает время выполнения с 3 секунд до 0.01 секунды — в 300 раз быстрее.

Кейс: как мы ускорили каталог в 20 раз

Клиент — интернет-магазин с 50 000 товаров. Страницы каталога грузились 6–8 секунд. Slow query log показал запрос к b_iblock_element_property с LIKE '%текст%'. Создали FULLTEXT-индекс и переписали запрос на MATCH AGAINST. Время выполнения упало с 2.3 с до 0.12 с. Общая загрузка страницы сократилась до 1.2 секунд. MySQL FULLTEXT

Хотите так же? Получите консультацию — оценим ваш случай за час.

Что входит в работу

  • Анализ slow query log за 7 дней (или указанный период).
  • Идентификация топ-10 медленных запросов.
  • EXPLAIN и рекомендации по индексам.
  • Реализация оптимизаций (создание/изменение индексов, рефакторинг запросов).
  • Отчёт с метриками до/после.

Процесс работы

  1. Подключение slow log на вашем сервере (удалённо).
  2. Сбор лога за репрезентативный период (обычно 1–2 дня).
  3. Анализ с помощью pt-query-digest.
  4. Выдача отчёта с приоритетами.
  5. Согласование и реализация изменений.
  6. Повторный замер для подтверждения.

Сроки: от 1 до 5 дней в зависимости от сложности.

Почему стоит довериться нам?

  • 7+ лет опыта с Битрикс.
  • 300+ успешных проектов.
  • Сертифицированные специалисты 1С-Битрикс.
  • Работаем по договору с гарантией результата.

Готовы разобраться с тормозами? Свяжитесь с нами — оценим проект бесплатно и предложим решение за 1 день.