🔥 Горящие вакансии
Все статьи

ДО: Как сократить время запуска комплексных процессов по шаблону в 1С

Эту и другие технические статьи написали наши программисты 1С и получили за них премии. Если вы тоже работаете с 1С и любите делиться опытом, приходите разработчиком в Neti

Кирилл, разработчик 1С в Neti, во время внедрения «1С-ЭДО» на клиентском проекте выявил недокументированную особенность конфигурации «1С:Документооборот», которая замедляет запуск комплексных бизнес-процессов с большим количеством разделений-слияний на схеме. Программист рассказывает, как нашел и устранил эту проблему.

Проблема

Для работы с большими повторяющимися комплексными бизнес-процессами чаще всего используются шаблоны, в которых прописывается полный маршрут обработки предмета. На этапе создания шаблона и в момент запуска процесса происходит проверка, в результате которой система устанавливает верность схемы. Чем сложнее схема, тем дольше проверка. Но некоторые моменты могут увеличивать длительность проверки до абсолютно неприемлемых в работе значений.

На проекте заказчика я столкнулся с тем, что обработка схемы длилась больше 10 минут. Ранее я предполагал, что проверки, занимающие много времени, вызваны загруженностью рабочего сервера.

Я проанализировал производительность и обнаружил большие затраты времени в функции СхемыКомплексныхПроцессов. ЭлементВходящийВНесколькоСегментовРазделениеСлияние

ДО: Как сократить время запуска комплексных процессов по шаблону в 1С

Больше всего заинтересовало количество вызовов. По описанию эта функция «ищет элемент, входящий в несколько сегментов Разделение-Слияние. В качестве результата возвращает его имя».

Поиск элементов разделений-слияний идет путем полного обхода схемы несколькими вложенными циклами. При увеличении вариаций путей для схемы количество вызовов возрастает на порядок. Благодаря тестированию получилась таблица времени выполнения для разного количества разделений-слияний.

Число разделений-слияний Время проверки схемы
3 1 сек.
4 10 сек.
5 ~3 мин.
6 больше 30 мин.

ДО: Как сократить время запуска комплексных процессов по шаблону в 1С

Решение

Я переработал схему комплексного процесса в сторону максимального отказа от разделений в тех точках, где это возможно. Часть процессов заменил на те, в которых допускается параллельность внутри, например, согласование. На отметке в 3 разделения время обработки схемы снизилось до приемлемых значений.

Так особенность конфигурации «1С:Документооборот» была обработана конкретно в моем случае. Если переход на параллельность внутри процессов ограничен техническим заданием, то для повышения производительности указанную функцию необходимо доработать.

Оставить коментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Отправить резюме

    Я согласен на обработку персональных данных в соответствии
    со ст. 9 ФЗ № 152-ФЗ «О персональных данных»

    Отправить резюме

      Я согласен на обработку персональных данных в соответствии
      со ст. 9 ФЗ № 152-ФЗ «О персональных данных»

      Pекомендовать друга

        Отправьте контактные данные вашего друга и предупредите его, что мы с ним свяжемся. Когда друг успешно отработает 3 месяца, вы получите 20 000 ₽.


        Выбрать вакансию
        • Bitrix-разработчик
        • Программист 1С
        • Консультант-аналитик 1С
        • Проекты для команды специалистов 1С
        • Проекты для специалистов 1С
        • Стажёр-программист 1С
        • Консультант по финансам Microsoft Dynamics AX
        • Консультант Microsoft Dynamics AX на зарубежные проекты
        • Ведущий консультант Microsoft Dynamics 365 Finance and Operation
        • Ведущий разработчик Microsoft Dynamics AX на зарубежные проекты
        Я согласен на обработку персональных данных в соответствии
        со ст. 9 ФЗ № 152-ФЗ «О персональных данных»

        Pекомендовать друга

          Отправьте контактные данные вашего друга и предупредите его, что мы с ним свяжемся. Когда друг успешно отработает 3 месяца, вы получите 20 000 ₽.


          Выбрать вакансию
          • Bitrix-разработчик
          • Программист 1С
          • Консультант-аналитик 1С
          • Проекты для команды специалистов 1С
          • Проекты для специалистов 1С
          • Стажёр-программист 1С
          • Консультант по финансам Microsoft Dynamics AX
          • Консультант Microsoft Dynamics AX на зарубежные проекты
          • Ведущий консультант Microsoft Dynamics 365 Finance and Operation
          • Ведущий разработчик Microsoft Dynamics AX на зарубежные проекты
          Я согласен на обработку персональных данных в соответствии
          со ст. 9 ФЗ № 152-ФЗ «О персональных данных»

          Спасибо!

          Мы получили ваше резюме. Менеджер свяжется с вами в течение трех дней

          Горящие вакансии