Как настроить отключение неактивных пользователей в серверных базах 1С

Системный администратор 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

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

Штатный механизм кластера: спящие и завершенные сеансы

В платформе 1С:Предприятие 8.3 реализован встроенный механизм управления жизненным циклом неактивных сеансов. На уровне свойств информационной базы в консоли администрирования кластера серверов 1С предусмотрены ключевые параметры:

  1. Время засыпания пассивных сеансов (в секундах) — интервал времени бездействия, после которого сеанс переводится в спящий режим. В спящем состоянии сеанс может освобождать серверную лицензию (если она выдана кластером серверов).
  2. Время завершения спящих сеансов (в секундах) — период нахождения сеанса в спящем состоянии, по истечении которого кластер принудительно удаляет сеанс из памяти.

Рассмотрим типовую практику настройки интервалов. На практике часто применяют схему: 10 минут (600 секунд) для отправки сеанса в спящий режим и 2 часа (7200 секунд) для полного отключения сеанса. Это позволяет оперативно освобождать лицензии при кратковременном отсутствии сотрудников, но не выбивать их из базы при стандартных перерывах.

Почему спящие сеансы не засыпают или спонтанно просыпаются

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

  1. Клиентские обработчики ожидания: В конфигурациях активно используется метод ПодключитьОбработчикОжидания. Процедуры, проверяющие почту, напоминания, задачи или выполняющие фоновый опрос торгового оборудования, регулярно инициируют вызовы к серверу и тем самым сбрасывают счетчик неактивности.
  2. Автообновление динамических списков: Если у пользователя открыт журнал документов с включенной опцией периодического автообновления, клиентское приложение отправляет запросы к серверу базы данных, что распознается платформой как пользовательская активность.
  3. Система взаимодействия: Встроенные механизмы чатов и оповещений платформы могут поддерживать постоянную связь с сервером через фоновые опросы или постоянные соединения, препятствуя переходу в спящий режим.

Альтернативные способы мониторинга и корректного завершения

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

  1. Механизмы Библиотеки стандартных подсистем (БСП): Подсистема блокировки работы пользователей позволяет мягко завершать сеансы с выводом предупреждающего диалогового окна с обратным отсчетом времени. Пользователь получает возможность сохранить документ или отложить завершение работы.
  2. Скрипты администрирования через утилиту RAC: С помощью консольной утилиты rac и сервера администрирования ras можно по расписанию получать список всех сеансов, анализировать время последнего серверного вызова и выборочно вызывать команду завершения сеанса terminate-session с логированием действий в файл.
  3. Групповые политики терминального сервера (RDP/RDS): Если пользователи работают в терминальном окружении, наиболее надежный контроль простоя достигается настройками GPO Windows: «Лимит времени для неактивных сеансов RDS» и «Лимит времени для отключенных сеансов». В этом случае система отслеживает отсутствие ввода с мыши и клавиатуры, корректно закрывая весь терминальный сеанс вместе с 1С.

Особенности освобождения лицензий

Важно помнить, что спящий сеанс 1С освобождает клиентскую лицензию только тогда, когда раздача лицензий настроена через сервер 1С:Предприятия (сетевой аппаратный ключ или многопользовательская программная лицензия кластера). Если на рабочем месте пользователя используется локальный HASP-ключ или однопользовательская программная лицензия, активированная на клиентском компьютере, засыпание сеанса лицензию не освободит до полного закрытия процесса клиентского приложения.

← На главную