Коротко
Обмен 1С с сайтом на
Разберём, почему обмен 1С с сайтом на
Где теряется время
Обмен состоит из нескольких этапов, и медленным может быть любой из них:
| Этап | Что происходит | Что тормозит |
|---|---|---|
| Подготовка в 1С | 1С формирует файлы выгрузки | полная выгрузка вместо изменений, картинки, медленный сервер 1С |
| Передача | файлы уходят на сайт | большие файлы без сжатия, медленный канал |
| Загрузка на сайте | сайт по шагам записывает товары, цены, остатки | маленький шаг, лимиты сервера, медленная база данных |
| После загрузки | индексы фильтра и поиска, кеш | пересчёт индексов на всём каталоге, сброс кеша |
Сначала нужно понять, какой этап самый долгий: время каждого шага видно в протоколе обмена в 1С и в журналах сервера. Ускорять «всё сразу» без замера — значит тратить время на то, что не влияет на результат.
Причина 1. Каждый раз выгружается весь каталог
Если 1С каждый раз отправляет все товары, а не только изменённые, обмен на большом каталоге будет идти часами при любом сервере.
Что сделать: включить выгрузку только изменений, а полную выгрузку запускать редко — например, раз в неделю ночью.
Причина 2. Цены и остатки идут вместе с каталогом
Цены и остатки меняются в течение дня, а описания, свойства и картинки — редко. Когда всё идёт одним обменом, ради одного остатка заново обрабатывается весь товар.
Что сделать: разделить обмен: цены и остатки — часто, каждые 5–10 минут; товары и свойства — по изменениям или ночью; картинки — только для новых и изменённых товаров. О том, какие данные куда передавать, — статья «Какие данные передавать между 1С и сайтом».
Причина 3. Картинки
Фотографии — самая тяжёлая часть выгрузки. Если 1С каждый раз отправляет все картинки, а они ещё и в исходном размере с фотоаппарата, передача и обработка занимают большую часть обмена.
Что сделать: выгружать картинки только при изменении, уменьшать их до нужного размера перед загрузкой в 1С, включить сжатие ZIP при передаче.
Причина 4. Неподходящий шаг обмена и лимиты сервера
Сайт загружает данные порциями. Слишком короткий шаг — много лишних запросов, слишком длинный — обрывы по времени выполнения. Узкие лимиты PHP и веб-сервера тоже заставляют дробить обмен.
Что сделать: подобрать интервал шага и размер файла под ресурсы сервера и объём каталога, поднять лимиты времени выполнения и памяти. Это работа на стороне сервера — подробнее на странице «Настройка сервера для обмена с 1С».
Причина 5. Медленная база данных
Каждый товар при загрузке — это десятки запросов к базе. Если база MySQL настроена «по умолчанию», а каталог большой, загрузка упирается в неё.
Что сделать: настроить MySQL под объём каталога (память под кеш таблиц, параметры InnoDB), проверить индексы и медленные запросы. Подробнее — на странице «Оптимизация MySQL»; если база ещё на старой версии, пригодится статья о переходе на MySQL 8.
Причина 6. Индексы и кеш после загрузки
После загрузки сайт обновляет индекс умного фильтра (фасетный индекс), поисковый индекс и сбрасывает кеш страниц каталога. На большом каталоге это может занимать больше времени, чем сама загрузка, а сброс кеша замедляет сайт для покупателей.
Что сделать: пересчитывать индексы только для изменённых товаров, тяжёлую переиндексацию запускать ночью, а кеш сбрасывать точечно — по изменённым разделам. Настройку умного фильтра разбирали в статье «Настройка умного фильтра в Битрикс».
Причина 7. Фоновые задачи зависят от посетителей
Часть работы после обмена выполняют агенты
Что сделать: перевести агенты на запуск по расписанию сервера (cron) — тогда они не зависят от посещений и не тормозят страницы.
Причина 8. Обмен мешает покупателям
Если тяжёлый обмен идёт днём на том же сервере, страдает и обмен, и сайт: страницы открываются медленно, а обмен конкурирует за ресурсы с покупателями.
Что сделать: полные выгрузки — ночью, днём — только цены и остатки; если каталог большой, а обновлять его нужно часто, — поднять ресурсы сервера или вынести тяжёлые задачи в отдельные процессы. Подобрать сервер поможет страница «Хостинг для интернет-магазина».
Причина 9. Медленная сторона 1С
Иногда сайт ни при чём: 1С долго формирует выгрузку из-за объёма базы, доработок, файлового режима работы или слабого сервера 1С.
Что сделать: замерить время формирования файла в 1С, проверить доработки обработки обмена и ресурсы сервера 1С. Если 1С работает в облаке или на арендованном сервере — проверить его тариф.
Что даёт ускорение
| Мера | Что меняется |
|---|---|
| Выгрузка только изменений | обмен обрабатывает десятки товаров вместо всего каталога |
| Отдельный частый обмен цен и остатков | актуальные цены и наличие в течение дня |
| Картинки только при изменении, со сжатием | передача и обработка файлов в разы меньше |
| Шаг обмена и лимиты под сервер | нет обрывов и повторов |
| Настройка MySQL | быстрее запись каждого товара |
| Точечные индексы и кеш, агенты на cron | сайт не тормозит после обмена |
Насколько ускорится обмен, зависит от того, какой этап был самым медленным, — поэтому начинают с замера, а не с покупки более мощного сервера.
Чек-лист: быстрый обмен с 1С
- Замерено время каждого этапа: подготовка в 1С, передача, загрузка, индексы.
- Выгружаются только изменения, полная выгрузка — редко и ночью.
- Цены и остатки идут отдельным частым обменом.
- Картинки уменьшены и передаются только при изменении, включено сжатие ZIP.
- Шаг обмена и лимиты PHP и веб-сервера подобраны под каталог.
- MySQL настроена под объём данных.
- Индексы фильтра и поиска пересчитываются точечно, кеш сбрасывается по разделам.
- Агенты
1С-Битрикс работают по расписанию сервера. - Тяжёлые выгрузки идут ночью, днём сайт не тормозит.
- Проверена скорость формирования выгрузки на стороне 1С.
Сколько стоит ускорение обмена
Сначала делаем диагностику: она показывает, где теряется время — в 1С, на сервере или на сайте. Настройку сервера и доработку обмена оцениваем в часах — 4 000 ₽ за час, смету согласуем до начала работ. Если нужно перестроить обмен с разделением на части и выгрузкой изменений, — пакет «Обмен с доработками» от 90 000 ₽ на странице «Интеграция 1С и Битрикс». Типовые ошибки обмена разобраны в статье «Обмен 1С и сайта: 10 типовых ошибок».
Как ускорить обмен 1С с сайтом
- Замерьте этапыПодготовка в 1С, передача, загрузка на сайте, индексы и кеш.
- Выгружайте только измененияПолную выгрузку — редко и ночью.
- Разделите обменЦены и остатки — каждые 5–10 минут, каталог — по изменениям.
- Облегчите картинкиУменьшенные фото, только при изменении, сжатие ZIP.
- Настройте сервер и базуШаг обмена, лимиты PHP и веб-сервера, параметры MySQL.
- Разгрузите сайтТочечные индексы и кеш, агенты на cron, тяжёлые выгрузки ночью.
Источники
Подготовлено командой WRP — Золотого партнёра












