Практически все наши проекты — магазины с интеграцией. Решение проблем с интеграцией занимает значительную часть нашего времени на этапе внедрения и при технической поддержке.
Мы собрали наши наработки в один мощный инструмент «Продвинутый обмен с 1С» для решения различных задач:
ускорение обмена
отладка
отказоусточивость.
некоторых других.
Ускорение. Выгрузка только цен и остатков
Клиентам надо очень часто обновлять остатки и цены. Описания товаров выгружать надо редко.
Выгрузка изменений не всегда помогает. Иногда надо делать полную.
На одном проекте на большой базе полная выгрузка шла 32 часа. Пока она шла, остатки были неактуальны. При этом остатки и цены записывались на последнем шаге за 6 минут.
Как ускорить обмен?
Включаем в модуле «Продвинутый обмен с 1С» флажок «Загружать только цены и остатки (файл с описанием товаров будет пропущен)».
В 1С картинки и файлы можно отключить.
Делаем обмен.
Получаем полную выгрузку цен и остатков за 30 минут: 20 минут 1С формирует файлы + 4 минуты передача данных + 6 минут запись на сайте.
В документации описан еще один пример. Можно настроить не один обмен, а два. Первый — полный, второй — только цены и остатки.
Ускорение. Быстрая запись свойств товаров
Все-таки полную выгрузку товаров надо хоть иногда делать. 32 часа — очень много. Все эти 32 часа остатки и цены неактуальны.
Включаем опцию «Быстрая запись свойств товаров».
Получили полную выгрузку за 16 часов вместо 32. Это приемлимо. Значит за ночь можно все обновить.
Опция записывает только используемые свойства. Если в инфоблоке всего 1000 свойств, а у товара только 20, значит остальные 980 пустых проверяются и пишутся вхолостую.
Вот так двумя галочками можно решить бизнес-задачи с медленным обменом. Дальше надо думать, как оптимизировать сервер или оптимизировать код в 1С.
Отладка. Живой лог
Клиент хочет видеть, как идет обмен, и, как долго еще ждать. Особенно актуально для Управления торговлей 11, которая не показывает, что происходит.
Живой лог в реальном времени показывает, что сейчас происходит:
Страничка обновляется мгновенно с помощью модуля Push and Pull. Можно «откинуться на спинку кресла» и смотреть, как идет обмен, с 1С.
Модуль Push and Pull есть в Малом Бизнесе.
Отладка. Лог-файл
Программистам нужно больше информации. Например, о том, сколько времени записывается товар, и, на каком товаре произошел сбой.
Для этого есть инструмент — лог-файл. Включите флажок «Записывать все шаги в лог-файл».
В лог-файле будет то, что 1С собирается записать на сайт и время шагов.
Отказоустойчивость:
Отказоустойчивость — не менее важная характеристика обмена, чем скорость.
Для заказчика очень неприятна ситуация, когда обмен шел несколько часов и из-за чего-то прервался. Для разработчика самая страшная ситуация, когда такой заказчик звонит и требует разобраться почему прервался обмен. Вина может быть не в разработчике, а в сервере, но заказчик все-равно будет звонить разработчику
Мы уменьшаем нагрузку на сервер, отключаем лишнее и выставляем правильные параметры для Битрикса и PHP.
1. Мы сохраняем время последнего обмена, чтобы знать когда обновились цены в каталоге.
2. Иногда надо корректно прервать обмен или полностью запретить для переноса сайта.
Заключение:
Настройка обмена и техподдержка — задача нетривиальная. Не на всех сайтах можно запросто перезапустить полный обмен.
Многие задачи могут быть решены на стороне сайта без переписывания типового обмена. Но без качественного инструмента заниматься решением проблем с интеграцией очень тяжело.
Следует всегда закладывать в бюджет проекта стоимость интеграции, поддержку интеграции и инструменты.
Коллеги, пожалуйста, если вы примените модуль, напишите какие цифры по ускорению обмена вы получили при включении модуля на своем проекте. И сколько всего свойств в инфоблоке у вас.
Чтобы точно проверить быструю запись свойств, нужно отключить в настройках магазина в интеграции с 1С опцию Использовать контрольные суммы. Если опция будет включена, то при втором запуске будет очень быстро. Потому что товар вообще не будет перезаписан.
Еще наш модуль пишет время записи в лог при записи элемента. Можно быстро тестировать с одним товаром и смотреть лог-файл.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».