При администрировании серверов 1С:Предприятие системные администраторы часто сталкиваются с ситуацией, когда пользователи, свернув окно приложения, фактически продолжают удерживать лицензию на сервере. В настройках конфигуратора установлены параметры Время засыпания пассивного сеанса и Время завершения спящего сеанса, однако на практике свернутый клиент не «засыпает». Давайте разберем, почему это происходит и можно ли на это повлиять.
Основная причина, по которой сеанс не переходит в спящий режим, заключается в архитектурных особенностях работы платформы 1С. Рассмотрим подробнее, как именно сервер определяет активность пользователя:
СоединенияИБГлобальный.КонтрольРежимаЗавершенияРаботыПользователей(). Этот процесс в архитектуре 1С выступает своеобразным «пульсом».Обработчики ожидания в коде конфигурации также воспринимается платформой как признак того, что пользователь продолжает работу. Пока работает фоновый таймер, сервер не может однозначно определить, отошел ли пользователь или просто свернул окно.Важно понимать, что текущая реализация «засыпания» в первую очередь ориентирована на веб-клиент. В случае с браузером пользователь может закрыть вкладку, но сервер 1С не сразу получит информацию о разрыве соединения. Периодические запросы помогают платформе понять, что клиент «умер» или закрыл браузер, и корректно завершить сеанс. Для тонкого клиента, установленного локально, логика платформы защищает пользователя от случайной потери данных: если система начнет принудительно «усыплять» процессы, это приведет к потере несохраненных изменений в документах.
На сегодняшний день штатных настроек в Конфигураторе или параметрах сервера, которые позволяли бы принудительно «усыплять» именно свернутый тонкий клиент, не существует. Платформа 1С не различает «свернутое окно» и «активное окно» в контексте потребления лицензий.
Если ваша задача — жестко ограничить использование лицензий, рассмотрим возможные подходы, которые используют администраторы для решения этой проблемы:
PowerShell), которые будут проверять время простоя процесса 1cv8.exe или отсутствие ввода пользователя с клавиатуры и мыши. При длительном простое скрипт может принудительно завершить процесс тонкого клиента.Проанализировав ситуацию, мы пришли к выводу, что наблюдаемое поведение — это не ошибка, а штатная работа архитектуры 1С:Предприятие. Попытки «взломать» этот механизм через манипуляции с параметрами Время засыпания пассивного сеанса не принесут результата, так как активный процесс тонкого клиента всегда будет генерировать активность.
Если вы столкнулись с дефицитом лицензий, мы рекомендуем:
Таким образом, архитектурная защита от случайного завершения работы является приоритетной для платформы 1С, и на текущем этапе развития системы полноценное решение для «усыпления» свернутого тонкого клиента штатными средствами платформы не реализовано.