...

Можно ли ускорить проверку?

Тема в разделе "Вопросы по функционалу", создана пользователем alexfuse, 2 июл 2018.

  1. alexfuse

    alexfuse Member

    Можно ли ускорить проверку в данном переходе?т.к. сейчас проверка проходит за 5-10 секунд. Предыдущий сценарий, который загружает все возможности, а в некоторых случаях еще и все сделки и ищет дубликаты, выполняется быстрее чем данный переход.
     

    Вложения:

  2. akarimov

    akarimov Member

    Я так понял там просто проверка условия (не сценарий)? Тогда не должно такого быть, надо смотреть workflow log чтобы понять что происходит в этот момент, может какие блокировки в базе. Но сомнительно. Скорее предыдущий сценарий отрабатывает это время. Уточните как понимаете что именно эта проверка занимает 5-10 секунд?
     
  3. alexfuse

    alexfuse Member

    Идет логгирование каждого процесса в txt где записываем время
    Например вот один из последних "логов"

    02.07.2018 14:55:04
    Name: Звонок от 79831367806
    Конец проверки дубликатов 02.07.2018 14:55:08
    // тут как раз и есть этот переход. в данном случае 7 секунд//
    Начало создания возможности: 02.07.2018 14:55:15
    02.07.2018 14:55:15
    Create Lead Id:3290

    Да просто проверка контекстной переменной на значение true/false

    Вот лог из workflow по процессу который я выше описал
    2018-07-02 11:55:03,190 [57] Start process[Сделка, Звонок от 79831367806] - 77 ms
    2018-07-02 11:55:03,190 [57] Execute script[Создание лида, Звонок от 79831367806] - SozdanieLida(EleWise.ELMA.Model.Entities.ProcessContext.P_SozdanieLida) - SozdanieLida(Context context) - 343 ms
    2018-07-02 11:55:03,206 [57] Execute queue item[Создание лида, Звонок от 79831367806] - #816213 - 390 ms
    2018-07-02 11:55:03,737 [30] Execute queue item[Сделка, Звонок от 79831367806] - #816214 - 93 ms
    2018-07-02 11:55:03,784 [96] Execute queue item[Создание лида, Звонок от 79831367806] - #816215 - 109 ms
    2018-07-02 11:55:08,346 [54] Execute script[Сделка, Звонок от 79831367806] - ChekDublicate(EleWise.ELMA.Model.Entities.ProcessContext.P_Sdelka) - ChekDublicate(Context context) - 4406 ms
    2018-07-02 11:55:08,362 [54] Execute queue item[Сделка, Звонок от 79831367806] - #816216 - 4468 ms
    2018-07-02 11:55:14,909 [89] Execute queue item[Сделка, Звонок от 79831367806] - #816217 - 62 ms
    2018-07-02 11:55:15,784 [130] Execute script[Сделка, Звонок от 79831367806] - CreateLead(EleWise.ELMA.Model.Entities.ProcessContext.P_Sdelka) - CreateLead(Context context) - 687 ms
    2018-07-02 11:55:15,800 [130] Execute queue item[Сделка, Звонок от 79831367806] - #816218 - 749 ms
    2018-07-02 11:55:17,721 [11] Execute script[Сделка, Звонок от 79831367806] - ResponsibilityAreaList(EleWise.ELMA.Model.Entities.ProcessContext.P_Sdelka) - ResponsibilityAreaList(Context context) - 140 ms
    2018-07-02 11:55:17,768 [11] Execute queue item[Сделка, Звонок от 79831367806] - #816219 - 249 ms
    2018-07-02 11:55:18,550 [64] Execute queue item[Сделка, Звонок от 79831367806] - #816220 - 93 ms
    2018-07-02 11:55:18,815 [132] Execute queue item[Сделка, Звонок от 79831367806] - #816222 - 124 ms
    2018-07-02 11:55:19,143 [103] Execute queue item[Сделка, Звонок от 79831367806] - #816221 - 156 ms
     
    Последнее редактирование: 2 июл 2018
  4. akarimov

    akarimov Member

    Судя по всему мы обсуждаем эти строки лога. Из них видно что CheckDublicate занимает 4,5 сек (2 строки одна на скрипт другая на элемент очереди по сути одно и тоже), и 0,06 сек на проверку условия.
    Советую сравнить ваши логи с workflow логом, возможно какая то ошибка в своей реализации, из-за каких нибудь особенностей ELMA.
    Ну как вариант посмотреть переменная контекстная может не простая, а вычисляемая, тогда добавляется потеря времени на вычисление.
    Я подозреваю, задержка связана не с элементом условия, а скорее с функцией проверки дубликатов, например она может что-то делать в БД, и эти 2 сек разницы (я по workflow лог между 11:55:08 и 11:55:14) связаны с завершением транзакции. Или с очередью -количество одновременно работающих элементов очереди исполнения задается настройками, может их у вас больше возникает и тупо происходит задержка запуска следующего элемента.
     
  5. alexfuse

    alexfuse Member

    Я вас понял. Да скрипт проверки дубликатов большой он ищет возможности/сделки по номеру телефона, а если нет совпадений, то по другому полю и добавляет комментарий к найденной возможности/сделке + записывает информацию в txt. Переменная контекстная = true в случае если найден дубликат.
     
  6. Здравствуйте, выполните выборку из таблицы WorkflowTrackingItem, по значениям полей StartDate и EndDate можно определить сколько реально выполнялось действие, ElementUid перехода можно посмотреть в дизайнере
     
  7. alexfuse

    alexfuse Member

    а где именно?
     
  8. Нужно в настройках перехода навести курсор на Название
     

    Вложения:

Поделиться: