База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как завершать неактивные сессии 1С автоматически и быстро?
- В этой теме 1 ответ, 2 участника, последнее обновление 1 час, 47 минут назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
23 апреля 2026 в 17:32 #36788
постоянно зависают сессии пользователей на сервере 1С, и стоит ограничение только 1н сеанс, так как мало лицензий. Вопрос как сделать так если пользователь не активен в сессии чтобы она автоматически завершалась в очень короткий срок?
-
23 апреля 2026 в 17:32 #36789
Чтобы автоматически завершать неактивные сеансы 1С с минимальным временем ожидания, нужно настроить параметры информационной базы и сервер терминалов (если используется), а также можно использовать регламентные задания для принудительного завершения.
1. Настройка параметров информационной базы (через Конфигуратор):
— В Конфигураторе зайдите в меню: Администрирование → Параметры информационной базы.
— Установите:
— Время засыпания пассивных сеансов (IdleTimeout) — например, 60 секунд (1 минута) или даже меньше, но не рекомендуется ставить меньше 10 минут для веб и тонкого клиента, чтобы не было проблем с поддержанием сеанса.
— Время завершения спящих сеансов (SleepTimeout) — например, 60 секунд.Важно: для тонкого и веб-клиента минимальное время засыпания не рекомендуется ставить меньше 10 минут, так как клиент сам посылает запросы для поддержания активности примерно раз в 5-10 минут. Если поставить меньше, сеанс будет постоянно «просыпаться» и не будет уходить в спящий режим.
2. Настройка политики на сервере терминалов (если используется):
— В свойствах пользователей Windows (Локальные пользователи и группы → Пользователи → Свойства → Вкладка «Сеансы») установите:
— Ограничение бездействующего сеанса — например, 5-10 минут.
— Завершение отключенного сеанса — например, 10-15 минут.Это позволит Windows автоматически завершать сессии пользователей, которые неактивны.
3. Использование регламентного задания или обработки для принудительного завершения сеансов:
— В 1С есть стандартная обработка «Блокировка работы пользователей» (Администрирование → Обслуживание → Блокировка работы пользователей), с помощью которой можно запланировать завершение всех сеансов в определённое время.
— Можно написать собственное регламентное задание, которое будет периодически проверять неактивные сеансы и завершать их программно через метод МенеджерСеансов.ЗавершитьСеанс(ИдентификаторСеанса).4. Важные рекомендации:
— Не ставьте слишком маленькое время засыпания для веб и тонкого клиента (меньше 10 минут), иначе сеансы будут постоянно «просыпаться».
— Для толстого клиента можно ставить меньшее время.
— Если пользователи часто «зависают» и не выходят из 1С, настройте и на стороне Windows автоматическое завершение сессий.
— В новых версиях 1С (начиная с 8.3.24) появилась возможность пользователям самостоятельно завершать свои «зависшие» сеансы при повторном входе.Пример настройки параметров информационной базы через конфигуратор:
|Время засыпания пассивных сеансов = 60 (секунд)
|Время завершения спящих сеансов = 60 (секунд)Если хотите программно завершать сеансы, пример кода:
1С (Код)123456789Процедура ЗавершитьНеактивныеСеансы()МенеджерСеансов = МенеджерСеансов();Сеансы = МенеджерСеансов.ПолучитьСеансы();Для Каждого Сеанс Из Сеансы ЦиклЕсли Сеанс.ВремяПоследнейАктивности < ТекущаяДата() - Интервал(0,0,5,0) Тогда // 5 минут бездействияМенеджерСеансов.ЗавершитьСеанс(Сеанс.Идентификатор);КонецЕсли;КонецЦикла;КонецПроцедурыЗапускайте эту процедуру по расписанию (регламентное задание).
Рекомендую посмотреть здесь:
https://kuharbogdan.com/stati-po-1s/kak-sekonomit-na-litsenziyah-1s-i-apparatnyih-resursah-servera-terminalov/
https://infostart.ru/1c/articles/1552262/
https://infostart.ru/1c/articles/126247/
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.