Часто при настройке синхронизации данных между конфигурациями БП 2.0 и БП 3.0 возникают проблемы с производительностью. Обмен, который должен отрабатывать за несколько минут, растягивается на длительное время, а регламентные задания запускаются с задержкой или не успевают завершиться. Давайте разберем, почему это происходит и как правильно организовать односторонний обмен.
Главная причина того, что обмен работает не по расписанию, заключается в блокировке ресурсов фоновым заданием. Если объем данных, подлежащих выгрузке, слишком велик, процесс ВыполнениеОбменаДанными не успевает завершиться за выделенный интервал (например, 5 минут). Следующее задание пытается запуститься, но натыкается на блокировку файлов или занятость объектов в памяти, что приводит к пропускам циклов или «зависаниям» процесса.
Особое внимание стоит уделить РегиструСведений СоответствияОбъектовИнформационныхБаз. Если в нем накопились десятки тысяч записей, которые система пытается обработать при каждом обмене, это неизбежно приведет к деградации производительности.
Чтобы исключить выгрузку данных из приемника (БП 3.0) в источник (БП 2.0), необходимо ограничить регистрацию изменений. Если вы используете КД 2.0, выполните следующие действия:
Конвертация данных.Правилах регистрации объектов (ПРИ) для всех необходимых справочников и документов установите принудительный отказ от регистрации.
// В правилах регистрации объектов
Если ЭтоОбъектДанных Тогда
Отказ = Истина;
КонецЕсли;
Такой подход гарантирует, что при изменении объектов в базе БП 3.0 информация о них не будет попадать в план обмена и не будет отправляться обратно в БП 2.0.
Если программных правил недостаточно или вы хотите радикально сократить нагрузку, воспользуйтесь возможностями конфигуратора:
ПланОбмена.РегистрСведений СоответствияОбъектовИнформационныхБаз. Если он включен в состав плана обмена, но вы планируете передачу данных только в одну сторону, рекомендуется убрать его из состава. Это существенно сократит время обработки XML-файлов сообщений.После внесения правок в правила или состав плана обмена важно очистить уже имеющуюся очередь сообщений, иначе система будет пытаться выгрузить «хвосты» предыдущих периодов.
Выполните Очистку регистрации изменений для узла обмена. Это позволит системе «забыть» о старых записях и начать синхронизацию с чистого листа, учитывая только новые изменения, возникшие после применения настроек.
Если вы используете FTP, обратите внимание на именование файлов. Ситуация, когда внутри архивов Message_БП_ВТ и Message_ВТ_БП оказываются идентичные данные, свидетельствует о неправильной настройке путей или префиксов.
Убедитесь, что для каждого направления (Источник->Приемник и Приемник->Источник) заданы уникальные ПрефиксыИмениФайлаСообщения в настройках узла плана обмена. Это предотвратит перезапись файлов, которые еще не были успешно обработаны на противоположной стороне.
Чтобы обмен работал стабильно:
Отказ = Истина в правилах регистрации для всех типов объектов, передача которых из БП 3.0 в БП 2.0 не требуется.СоответствияОбъектовИнформационныхБаз — не допускайте его неограниченного роста в плане обмена.ЖурналРегистрации, чтобы увидеть, какие именно объекты вызывают наибольшую задержку при сериализации.Придерживаясь этих рекомендаций, вы сможете устранить избыточную нагрузку на систему и обеспечить корректный односторонний обмен данными между вашими информационными базами.