Повторное создание сессий при длительных запросах

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

Панель содержит сообщение Запросы на сервере выполняются дольше обычного. Пересоздать сеанс и открыть новую вкладку? и кнопку ОК. Панель скрывается при нажатии на кнопку, создаётся новая пользовательская сессия, а также открывается главная страница Web-клиента в новой вкладке. Обработка длительного запроса будет продолжена в фоновом режиме.

Для пользователей Web-клиента действует заданный лимит на повторное создание сессий при длительных запросах. Если количество созданных повторно сессий достигло лимита, новая сессия не создается до завершения хотя бы одного из запросов в фоновом режиме. В таком случае сотруднику будет выдано предупреждение с текстом: Продолжение работы в новой вкладке временно недоступно. Пожалуйста, дождитесь завершения текущих запросов.

Если при выполнении длительного запроса сотрудник закрыл вкладку или окно браузера, запрос автоматически переходит в фоновый режим, а сессия будет создана повторно без дополнительного подтверждения.

Чтобы настроить длительность ожидания выполнения запроса:
  1. Откройте конфигурационный файл Каталог-установки-Web-клиента\5.5\Site\web.config.

  2. Перейдите к группе настроек configuration  Docsvision > WebClient > SettingGroups > SettingGroup[Name="WebClient"].

  3. Найдите настройку SessionRecreationDelaySec и укажите новое значение. Значение по умолчанию 30, минимальное значение — 10.

    <SettingGroup Name="WebClient">
      <Setting Name="SessionRecreationDelaySec" Value="30" /> (1)
    </SettingGroup>
    1 SessionRecreationDelaySec — ожидание завершения запроса в секундах, после которого появляется всплывающая панель с предложением повторно создать сессию.
  4. Сохраните изменения конфигурационного файла и перезапустите IIS.

Чтобы настроить лимит создаваемых повторно сессий:
  1. Откройте конфигурационный файл Каталог-установки-Web-клиента\5.5\Site\web.config.

  2. Перейдите к группе настроек configuration  Docsvision > WebClient > SettingGroups > SettingGroup[Name="WebClient"].

  3. Найдите настройку SessionRecreationMax и укажите новое значение. Значение по умолчанию 3, минимальное значение — 0 (ограничения отсутствуют).

    <SettingGroup Name="WebClient">
      <Setting Name="SessionRecreationMax" Value="3" /> (1)
    </SettingGroup>
    1 SessionRecreationMax — максимальное число повторно созданных сессий при длительных запросах.
  4. Сохраните изменения конфигурационного файла и перезапустите IIS.

Журналирование

События, связанные с повторным созданием сессий, фиксируются в журнале Web-клиента при уровне логирования Warn (уровень по умолчанию — Error).

При успешном повторном создании сессии в журнал записывается следующая информация:
  • Идентификатор сессии

  • Идентификатор пользователя

  • Идентификатор запроса

  • Тип запроса

  • Время запуска запроса

  • Время пересоздания сессии

При исчерпанном лимите на пересоздание сессии в журнал записывается следующая информация:
  • Идентификатор сессии

  • Идентификатор пользователя

  • Факт попытки создания новой сессии

При закрытии текущей сессии в журнал записывается следующая информация:
  • Идентификатор сессии

  • Идентификатор пользователя