


В клиент-серверном варианте работы информационной базы, при некорректном завершении работы программы, на сервере могут оставаться не завершенные сеансы пользователей. В старых версиях платформы (до версии 8.3.5) такие сеансы автоматически удалялись через короткий промежуток времени.
В новых версиях платформы, время по прошествии которого сеанс уходит в спящий режим и время через которое удаляется сеанс, необходимо настраивать самостоятельно. По умолчанию время ухода в спящий режим составляет 1200 секунд или 20 минут, а время удаления сеансов 86400 секунд или 1 сутки. Таким образом «спящие» сеансы доступны еще в течение суток. Поэтому, при переходе на новую платформу можно заметить увеличение количества «зависших» сеансов. А на самом деле, это не «зависшие» сеансы, а просто прошло менее суток по истечении которых они должны удалиться.
Интервалы засыпания и завершения сеансов можно настроить в конфигураторе. Для этого в главном меню нужно перейти: Администрирование->Параметры информационной базы.
Сеанс переходит в режим «спящего» если пользователь не пользуется программой в течении установленного в настройках времени. Когда пользователь работает в программе, то автоматически отправляется на сервер подтверждение активности пользователя. При нештатном выключении программы сеансы так же переходят в спящий режим. При возобновлении работы с программой сеанс из спящего режима переходит в активный.
1. progv8 04.10.2017 10:22 |
Висело с десяток не активных сеансов. После уменьшения времени засыпания пассивного сеанса и времени завершения спящего сеанса, сеансы так и остались висеть. Помогло только принудительное удаление в кластере серверов. Скорее всего настройки вступят в силу после перезапуска сервера или для новых сеансов. |
Для того чтобы добавить сообщение, необходимо Войти или Зарегистрироваться
Вы здесь
После перехода с платформы 8.2 на платформу 8.3 многие программисты и системные администраторы недоумевают, видя в консоли огромное количество зависших сеансов пользователей. Но не так страшен черт, как его малюют. Давайте попробуем разобраться.
Итак, картина выглядит примерно следующим образом:
Как мы видим, у сеансов отсутствует активное соединение и рабочий процесс. На каждого пользователя может быть запущено сразу несколько сеансов, но только один из них активный. Сеансы висят сутками и многих это пугает. Администраторы начинают принудительно их завершать. Но, на самом деле, страшного в этом ничего нет. Не многие двигают полосу прокрутки в списке сеансов вправо, где можно найти интересную колонку под названием «Спящий».
Так что же такое «спящий сеанс»?
Для повышения устойчивости работы клиентских приложений, в версии 8.3.5 реализовано удержание сеанса при оставлении программы без работы. Теперь, при длительной не активности или при засыпании клиентского компьютера, сеанс не завершается, а переходит в «спящий режим». При появлении активности, сеанс возобновляется.
Сеанс переходит в спящий режим в двух случаях:
- При нештатном разрыве соединения, назначенного сеансу (для толстого клиента, внешнего соединения, тонкого клиента при прямом соединении с сервером). При физическом отключении сети сервер обнаруживает разрыв соединения с клиентским приложением в течение 2-3 минуты.
- По истечении интервала времени, в течение которого клиентское приложение, использующее сеанс, не проявляется активности (для веб-клиента и тонкого клиента при подключении через веб-сервер). Если компьютер клиента не находится в режиме энергосбережения, и клиентское приложение бездействует (не выполняет никаких действий пользователя), то оно периодически вызывает сервер «1С:Предприятия» с интервалом 5-10 минут для поддержания активности сеанса. Поэтому не рекомендуется устанавливать время засыпания сеанса меньше 10 минут.
Любая активность приводит к пробуждению сеанса.
Спящий сеанс завершается в следующих случаях:
- По истечении интервала времени, который определяет время жизни спящего сеанса.
- Если блокировки, установленные спящим сеансом, конфликтуют с блокировками, которые пытаются установить активные сеансы.
Настройки времени засыпания сеанса и времени завершения спящего сеанса доступны в настройках ИБ (в конфигураторе меню: Администрирование — параметры информационной базы) .
По умолчанию время засыпания пассивного сеанса равно 20 минут, время завершения спящего сеанса — 24 часа.
Спящие сеансы
При нештатном завершении клиентского приложения (обрыв связи или закрытие окна бразуера) клиентские лицензии «1С: Предприятие 8» могут блокироваться.
Освободить заблокированные клиентские лицензии можно перезагрузкой ПК.
При нештатном завершении клиентского приложения сеанс удерживается еще 20 минут. После этого в версиях до 8.3.5 сеанс удалялся. С версии 8.3.5 сеанс засыпает в в спящем состоянии по умолчанию удерживается еще сутки. Спящий сеанс не занимает клиентскую лицензию «1С: Предприятие 8».
В версии 8.3.5 время засыпания сеанса и время удаления неиспользуемого спящего сеанса можно изменить с помощью специальной обработки или в Конфигураторе 1С в диалоге Администрирование/ Параметры информационной базы, установив рекомендуемые параметры спящего сеанса:
- время засыпания пассивных сеансов — 300
- время завершения спящих сеансов — 10
Кстати, кто спит, а кто активен всегда можно посмотреть через консоль сервера на закладке сеансов. В соответствующей колонке «Спящий» есть признак Да/Нет.
Штатно (по версии фирмы 1С) завершить работу в веб-клиенте можно командой «Файл»-«Выход». С версии 8.3.8 добавили команду завершения работы в заголовок приложения, рядом с кнопкой О программе. Она отображается в виде гиперссылки с именем текущего пользователя.При нажатии на гиперссылку открывается диалог с именем пользователя и командой Завершить работу.
Платформа каждые 5 секунд делает пинги клиетом сервер 1С (видны пакеты по 4 байта). На основании «пингов» сервер отслеживает целостность соединения с клиентским приложением. Отсутствие пингов в течение примерно 2 минут серввер интерпретирует как разрыв соединения.