Почему тормозит сайт на 1С-Битриксе и что с этим делать
Почему тормозит сайт на 1С-Битриксе: замерили 11 работающих сайтов. Телефон против компьютера, кеш, фильтр, агенты, боты, наши ошибки и проверка за 10 минут.
3 ноября мы открыли главную большого интернет-магазина на 110 тысяч товаров трижды подряд с компьютера и трижды с телефона.
Компьютер ждёт ответа сервера 0,43 секунды: ему отдают готовую копию страницы.
Телефон ждёт 2,9 секунды все три раза. Сервер каждый раз собирает ему главную заново, и страница для телефона тяжелее: 1,55 МБ кода против 0,42 МБ у компьютера. Главное на экране телефон показывает через 5,4 секунды, компьютер через 2,3.
Сайт не показывает ошибок. Директор с рабочего компьютера получает готовую копию и уходит довольным, а покупатель с телефона ждёт.
В нашей выборке сайты на 1С-Битриксе теряли время в семи местах, и слабый сервер был виноват редко. Секунды уходили на дорогу без сжатия, кеш, фильтр, фоновые задачи, вес страницы, процессор телефона и ботов.
Откуда цифры и где ошиблись мы сами
3 ноября мы проверили 11 работающих сайтов на 1С-Битриксе из своих проектов, ничего на них не меняя. На каждом открыли с телефона и с компьютера главную, раздел и карточку товара, всего 264 запроса к серверам и 132 загрузки в браузере. Ещё прочитали базы данных этих сайтов и разборы сбоев за лето и осень. Выборка не говорит о рынке, названия магазинов не раскрываем.
Мы мерили из Франкфурта: оттуда до российского сервера дальше, чем от Москвы, поэтому времена завышены. Сравниваем пары: телефон и компьютер открывают одну страницу в одну минуту, и разница показывает работу сайта.
Первый промах: чинили цену и сломали кеш. В августе на том же большом каталоге цена в карточке отставала от корзины. Мы написали функцию: поменялась цена — сбрось кеш каталога и готовые копии страниц. Цену она починила, но счётчик, которым Битрикс считает размер кеша, перевалил за лимит. Битрикс решил, что места нет, и стал выкидывать каждую новую страницу.
14 сентября в кеше лежало около 19 600 страниц, 15-го осталась одна. Главная собиралась 2,2 секунды вместо 0,021, а в логах не было ни одной ошибки. 24 сентября функция сбросила кеш 64 раза, и счётчик рос с каждым сбросом: 29-го на диске лежали 4 файла, а он показывал 10,74 ГБ. В тот же день мы нашли причину: наша функция не пересчитывала счётчик после сброса. 3 ноября копия главной для компьютера на месте, а счётчик покажет, удержится ли она.

Большой каталог, 14–17 сентября 2026, замеры на сервере. В дни, когда счётчик переваливал за лимит, главная собиралась 2,2–2,3 с.
Второй промах: видели медленную главную и не разобрали. Наши ежедневные проверки замечали её с сентября: 11-го телефон ждал главную 3,85 с, 18-го — 2,86 с. Мы разбирали то, что горело сильнее: мобильный раздел собирался 9,7 с. Журнал не говорит, получал ли телефон копию раньше: 9 сентября копий не было ни у кого, их съел тот же счётчик. Когда счётчик обнулили, компьютер снова стал получать копию, а телефон нет. Почему, пока не выяснили: эта настройка лежит в файлах сервера, а в этот раз мы их не открывали.
Почему скорость сайта важна для денег
Медленный сайт теряет деньги на трёх вещах: покупателях с телефона, оплаченных кликах и времени сервера. На двух сайтах, где копию получает только компьютер, телефон даёт 34 и 43 % визитов, и эти покупатели ждут дольше всех. Человек из рекламы смотрит на белый экран, а клик уже оплачен. Программа-обходчик съела 43 % времени сервера и забрала его у живых людей.
Наш замер не переводит секунды в заказы: мы мерили только время.
Почему тормозит сайт на 1С-Битриксе: семь мест, где теряется время
Страницы идут без сжатия, копию получает только компьютер, фильтр перебирает весь каталог, фоновые задачи стоят, страница весит мегабайты, телефон занят скриптами, а боты занимают сервер.

Схема по нашим случаям 2026 года. Больше всего телефон теряет на кеше: без копии он ждёт главную 2,9 с, компьютер с копией — 0,43 с.
1. Дорога до сервера: страницы уходят без сжатия
Сеть косметики жаловалась, что «сайт притормаживает», хотя сервер собирал главную за 0,05–0,11 с. Время терялось по дороге: страницы уходили несжатыми, главная весила 646 КБ вместо 67, каталог 1,4 МБ вместо 108 КБ. Промежуточный сервер клиента говорил с сайтом на старой версии протокола, а сжатие было включено только для новой. Мы исправили это одной строкой настройки. 3 ноября главная в 373 КБ сжимается до 52 КБ.
2. Кеш страниц: готовую копию получает только компьютер
Два сайта из 11 отдают готовую копию, и оба только компьютерам: телефон не получил копию Битрикса ни на одной из 33 страниц. Остальные девять собирают каждую страницу каждому посетителю заново.
В Битриксе готовые копии хранит технология «Композитный сайт», коротко композит.

Замер 3 ноября 2026 из Франкфурта, медиана трёх заходов. На главной сайта A телефон ждёт в 6,7 раза дольше компьютера, сайты обезличены.
На большом каталоге, сайте A, мы один раз попросили сервер собрать главную для компьютера без копии. Он ответил через 2,6 с, почти как телефону на каждом заходе. Там второй кеш, на веб-сервере, отдаёт разделы и карточки обоим одинаково быстро, ×1,0, а главную не хранит. У магазина B телефон не получает копию нигде и ждёт в 1,6–1,7 раза дольше.
У кеша нет правильной настройки по умолчанию. В магазине электротоваров копия была одна на адрес, и после телефона компьютеры получали мобильный сайт. Там стали отдавать копию только телефонам, и дольше стал ждать компьютер.
3. Умный фильтр перебирает весь каталог, когда опись товаров устарела
Чтобы быстро ответить на «дрели с аккумулятором, Makita», Битрикс держит для фильтра опись товаров, фасетный индекс: у какого товара какие свойства. Когда обмен с 1С меняет товары, опись иногда помечается устаревшей. Тогда Битрикс её не открывает и на каждый запрос фильтра перебирает весь каталог.
В августе один из магазинов пожаловался: «сайт стал медленно работать». Запросы фильтра шли по 2,7 с, каталог отвечал в среднем за 1,19 с. Код сайта помечал опись устаревшей при каждом импорте из 1С, а пересобирать её было некому. Мы пересобрали её за 68 секунд и поставили задачу «устарела — пересобери». Каталог из кеша стал открываться за 0,16–0,25 с, а сервер разгрузился: средняя очередь задач к процессору упала с 2,31 до 1,70.
3 ноября опись устарела у двух больших каталогов из восьми. Мы не мерили, насколько медленнее там фильтр, чтобы не нагружать работающие сайты.
На большом каталоге опись сломали мы сами. В августе наша пересборка там «закончилась» за 24 секунды, и в опись попали 3 587 товаров из 102 777. Битрикс поверил, что опись готова, и раздел «Дрели» показал 9 товаров вместо 223. Клиент написал «товары повылетали» и был прав: виновата наша правка, обмен ни при чём. Мы удалили опись, с тех пор она там выключена.
4. Агенты: фоновые задачи, которые никто не запускает
Агенты — фоновые задачи Битрикса: снимают резервы с неоплаченных заказов, обновляют курс валют, чистят очереди и статистику. Их запускает либо заход посетителя, либо планировщик на сервере, его называют крон.
Повторяющиеся задачи встают, когда совпадают две настройки. В скрипте планировщика стоит метка «я крон», и тогда Битрикс берёт из него только разовые задачи, а повторяющиеся ждёт от заходов посетителей. Запуск на заходах при этом выключен, и их не запускает никто. На трёх других сайтах запуск на заходах тоже выключен, но задачи идут: планировщик там настроен иначе.
В магазине кабеля и электрики на день замера повторяющиеся задачи стояли 55 дней, с 9 сентября. Среди них 30 задач самого магазина: снятие резервов, курс валют, чистка очередей. Поэтому резервы неоплаченных заказов всё это время не снимались. В той же базе работает CRM магазина, у неё стояли полторы тысячи напоминаний сотрудникам.
На большом каталоге та же поломка длилась 98 дней. Никто не чистил статистику посещений, и она выросла до 1,26 ГБ, это 14,6 % базы. Наша ежедневная проверка четырежды подряд сочла это безобидной мелочью. 3 ноября задачи там работают, статистика весит 247 МБ.
5. Вес страницы: блоки, картинки и битые файлы
В одном магазине в общий блок «связанные товары» кто-то вписал 500 товаров вместо штатного лимита. Статья блога с этим блоком весила 970 КБ кода и собиралась 1,2 с, под нагрузкой 5,1 с. Тот же блок стоял в карточках. Мы поставили лимит 8 товаров, и статья стала весить 370 КБ и собираться за 0,73 с.
Раздел витрины одного производителя весит на телефоне 9,9 МБ, из них картинки 9,4. Одна PNG, 3774 на 936 точек и 5 МБ, в пять раз шире, чем нужно телефону. Раздел каталога на 110 тысяч товаров при этом весит меньше мегабайта: число товаров на вес страницы не влияет, её утяжеляют картинки и блоки.

Раздел витрины на телефоне, 3 ноября 2026: вкладка Network, фильтр Img, сортировка по размеру. Картинки весят 9 394 из 9 850 КБ. Адрес и имена файлов скрыты, превью размыты.
В другом магазине запрос к несуществующей картинке уходил в PHP, ту часть сайта, что собирает страницы. PHP собирал оформленную страницу «не найдено», в нашем замере до 7,8 с, и каждый раз заводил посетителю сессию и корзину. Таких запросов было около 8 400 в сутки. После правки веб-сервера короткий ответ об ошибке уходит за 0,026 с.
6. Процессор телефона занят скриптами
В браузере мы изображали телефон: процессор замедлен в 4 раза, сеть 4G. Телефон в среднем ждал ответа сервера столько же, сколько компьютер, а время терял на процессоре: страница была занята скриптами и не отвечала на касания, по медиане 242 мс. У компьютера 0, но это быстрый рабочий ПК.
Хуже всего вышло на главной сети косметики: телефон занят 3,7 с против 0,2 на компьютере, и это тяжёлые блоки самого сайта. Чужие скрипты тоже занимают телефон. Это чат, поиск-сервис и виджеты с чужих серверов: в статье про шаблоны Аспро их отключение сняло почти 1,4 с занятости.
7. Боты занимают сервер вместо покупателей
Боты часто не попадают в кеш, и каждый их запрос стоит серверу дороже покупательского.
В сентябре большой каталог обходила программа с 23 облачных машин, которая не читает правила для роботов: 44 304 запроса за сутки и 43 % времени сервера. 98,8 % её запросов не попадали в кеш и занимали сервер по 1,58 с против 0,66 у остальных. Мы поставили ей лимит.
29 сентября там же программа, которая копирует каталог, положила сайт: очередь к процессору выросла до 81 при норме до 4. Она шла из облаков с 1 143 IP-адресов за 10 минут, по одному-два запроса с каждого, и лимит на адрес не помогал. Мы закрыли целые диапазоны адресов этих облаков, и очередь упала до 2,25.
В другом магазине роботы Яндекса давали 51,6 % запросов, и 70 % из них — служебные запросы: бонусы, подарки, счётчики. Каждый такой запрос будит PHP целиком.
Почему быстрый Битрикс со временем замедляется
Скорость Битрикса держится на отдельных выключателях, а обмен с 1С и переезд сервера их сбивают.
Битрикс — универсальная коробка: один движок держит и блог на десять страниц, и каталог на 110 тысяч товаров. Поэтому готовые копии, опись фильтра, фоновые задачи и лимит кеша настраивают под свой сайт.
Обмен с 1С помечает опись фильтра устаревшей, а обмен и доработки стирают кеш. После переустановки сервера у магазина электротоваров пропали настройки готовых копий, и ответ вырос до 0,8–2,1 с.
Как мы ускоряем сайт на Битриксе
Оптимизацию Битрикса начинаем с замера, потом чиним и каждый день проверяем.
Шаг 1. Меряем парами: телефон и компьютер, с кешем и без
Магазин электротоваров жаловался: «долго с главной в карточку». Сервер собирал страницу за 0,2 с, у покупателя в Москве ответ приходил за 0,25–0,35 с. У нас на точке замера выходило 0,85 с: разница — это дорога до нас. Сервер был ни при чём, причину мы нашли в браузере: блок подарков на каждой карточке дважды впустую обращался к серверу.
Шаг 2. Читаем журнал сервера со временем ответа
Журнал показывает, кто ест время сервера: бот, фильтр, поиск или служебные запросы. В магазине, где устарела опись фильтра, самым дорогим запросом оказался поиск по сайту: 4,66 с в среднем.
Шаг 3. Запускаем фоновые задачи и пересобираем опись фильтра
Ставим на расписание все фоновые задачи, включая повторяющиеся. Пересобираем опись фильтра ночью, сверяем полноту с каталогом и ставим рядом задачу «устарела — пересобери». Сторожевой скрипт останавливает зависший планировщик через 15 минут. До сторожа планировщик одного магазина простоял 52 часа, и всё это время не уходили письма, чеки и выгрузка на маркетплейс.
Шаг 4. Настраиваем кеш под каталог
Храним копию отдельно для телефона и компьютера, а лимит кеша ставим под объём каталога. Сбрасываем только изменённые страницы, а переносим кеш в другое хранилище ночью.
Мы выбрали ночь после своей ошибки: однажды перевели кеш одного магазина в Redis, быстрое хранилище в памяти, в 15:28 рабочего дня. 25 минут сайт собирал страницы с нуля и отдал 2 281 ответ с ошибкой 500, около трети из них живым людям. Сама правка ускорила сайт: главная 0,65 с вместо 0,90, каталог 0,57 вместо 1,36.
Шаг 5. Убираем лишний вес и проверяем каждый день
Ставим лимиты в блоках, ужимаем картинки под ширину телефона, на несуществующие файлы отвечаем без PHP, а чужие скрипты запускаем по первому действию посетителя. Потом каждый день проверяем время в парах, заголовок кеша, даты запуска агентов и опись фильтра.
Ускорение сайта: сменить сервер или найти, где теряется время
Переезд на сервер мощнее помогает, когда сайту не хватает памяти. В нашей выборке это исключение, хотя в выдаче такой совет идёт первым.
Одному из наших сайтов было мало 8 ГБ памяти: поисковый движок и Redis уходили из неё на медленный диск. Клиент расширил сервер до 16 ГБ и 8 ядер.
Несжатые страницы, стоящие фоновые задачи, устаревшая опись фильтра и обходчик на 43 % сервера переезжают вместе с сайтом, и новый сервер только дольше их терпит. Размер каталога на скорость тоже не влияет. Самый медленный сервер в замере, 1,1–1,4 с на страницу, у магазина примерно на 140 товаров. Сервер каталога на 110 тысяч товаров тратит на готовую копию около 0,3 с без учёта дороги до нас.
Разбор не нужен, если сайт маленький, тормозит одна страница и на ней картинка на 5 МБ. Тогда сожми картинку сам, платить за аудит незачем.
Частые вопросы
Хватит ли включить композит? Не хватит: на двух сайтах из 11, где готовые копии работают, их получает только компьютер, а на большом каталоге кеш однажды опустел из-за счётчика. Копию настраивают под телефон, дают ей лимит под каталог и следят за счётчиком.
Почему проверка скорости от Google зелёная, а сайт медленный? Она открывает одну страницу один раз и не видит ни фильтра, который перебирает весь каталог, ни бота, который занял 43 % времени сервера.
Нужно ли менять шаблон ради скорости? Первым делом нет: в нашем замере телефону больше всего мешали сервер без копии, тяжёлые блоки и чужие скрипты поверх шаблона.
Сколько стоит разбор скорости? Аудит сайта стоит 50 000 ₽, отчёт — за 5 рабочих дней. Если сайт уже лежит, это авария, её берём точечно. Скорость дальше держим в абонементе поддержки, от 95 000 ₽ в месяц.
Итог: где теряется время и как это заметить
| Где | Как заметить | Наш случай |
|---|---|---|
| Дорога | Нет сжатия | 646 КБ вместо 67 |
| Кеш | Телефон ждёт дольше | 2,9 с против 0,43 |
| Счётчик кеша | Счётчик больше диска | 1 страница вместо 19 600 |
| Фильтр | Опись устарела | 2,7 с на запрос |
| Агенты | Даты запуска в прошлом | 55 дней простоя |
| Вес | Картинки по мегабайту | PNG на 5 МБ |
| Телефон | Не отвечает на касания | 242 мс против 0 |
| Боты | Нагрузка без покупателей | 43 % сервера |
Меряй парами и повторяй замер регулярно: мы проверяем свои сайты каждый день.
Проверь сам, почему медленно работает сайт
Нужны Chrome и 10 минут.
- Телефон против компьютера. F12 → вкладка Network → значок телефона в углу → обнови страницу. Кликни первый запрос, во вкладке Timing найди строку Waiting for server response, это ожидание ответа сервера. Повтори в обычном режиме. Числа будут меньше наших, смотри на разницу: если телефон ждёт вдвое дольше, ему собирают страницу заново.
- Есть ли готовая копия. У того же запроса во вкладке Headers найди заголовок
X-Bitrix-Composite, обнови два-три раза. Нет заголовка — копии нет. Есть — открой тот же адрес с?ncc=1на конце: сервер соберёт страницу без копии, и разница во времени покажет, сколько он тратит на сборку. Перекидывает на чистый адрес — у сайта защита от мусорных адресов, пункт не сработает. - Сжата ли страница. Там же заголовок
Content-Encoding: gzip или br. Нет его — страница едет несжатой. - Нет ли тяжёлых картинок. В Network включи фильтр Img и отсортируй по размеру. Картинка больше 500 КБ на телефоне — повод разобраться.
- Идут ли фоновые задачи. В админке открой список агентов
/bitrix/admin/agent_list.phpи отсортируй по дате следующего запуска. Даты в прошлом на дни и недели — задачи стоят. - Не устарела ли опись фильтра. Попроси технаря выполнить в админке запрос
SELECT ID, NAME, PROPERTY_INDEX FROM b_iblock WHERE PROPERTY_INDEX <> 'N', он только читает базу. Y — опись работает, I — устарела, и фильтр перебирает весь каталог. - Как сайт отвечает на битую картинку. Открой
https://твой-сайт/upload/nope.jpg. Ответ дольше полсекунды или страница сайта вместо короткой ошибки — несуществующие файлы будят PHP.

Главная большого каталога в инструментах разработчика Chrome (DevTools), 3 ноября 2026. Телефон ждёт 2,8 с, компьютер 0,14 с и получает копию с заголовком X-Bitrix-Composite. Наша программа замера считает ожидание иначе, чем браузер, поэтому в начале статьи у компьютера 0,43 с. Адрес, IP и куки магазина скрыты.
Не прошёл хотя бы один пункт — жми кнопку ниже: найдём, куда уходят секунды. Нужен разбор всего магазина вместе со скоростью — закажи аудит сайта.
Скорость
1С-Битрикс
Композит
Кеш
Умный фильтр
Агенты
Боты
Телефон
Картинки
Сервер