Добрый день! Есть большой интерпретируемый БП, в котором есть элемент вызова другого интерпретируемого процесса. Вот кусок:
А вот данные из таблицы "SysProcessElementLog":
Почему между БП и элементом добавления данных постоянно образовывается пауза в +-42 секунды? Как её убрать? Сам вызываемый процесс небольшой.
Паузы есть после каждого элемента вызова БП (паузы разные, где-то 2 секунды, где-то 10, а где-то и больше минуты, в зависимости от процессов и соседних элементов), возникают они уже после того как отработал БП. Есть ощущение, что это какая-то кривая сериализация (выполнился за 3 секунды, думает 42 сек). 7.15
Раньше, при использовании компилируемых процессов, такого не было.
Нравится
Добрый вечер, Эдуард.
Такая пауза вполне может быть вызвана тем, что чтобы запустить процесс движёк делает много вещей для его запуска, таких как копирование переданных параметров, инициализация собственных параметров под-процесса, запись в журнал и прочее.
Возможно, какой-то из запросов тормозит, это можно узнать посмотрев сколько времени выполняются запросы к БД через профайлер в момент запуска под-процесса.
Фактически тут необходимо проводить анализ быстродействия системы.