Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Закрытие неактивных сеансов (2 сервера)

Закрытие неактивных сеансов (2 сервера)
Я
   Radion
 
20.02.20 - 15:03
Всем привет, прошу поделиться опытом, по закрытию зависших сессий пользователей с условием, что на сервере установлено 2 агента сервера 1С. Установили 2 агента сервера 1С (с различными версиями платформ). На первом продакшн база торговля, на 2-м БП, ЗУП и тп, что нужно оперативно обновлять. Если бы был установлен сервер 1С был один, проблем нет. Но их 2 и сессии зависают на обоих. Кто реализовывал такой вариант? Спасибо.
   belav1982
 
1 - 20.02.20 - 15:23
Настройки в самих базах не помогают? Конфигуратор: Администрирование - Параметры информационной базы?
Может, я не так что-то понял. Тогда хоть апну тему:)
   Radion
 
2 - 20.02.20 - 15:26
(1) хочу запустить через регламентное задание, через подключиться к агенту сервера через Com обьект. Вот здесь то и самая загвоздка, т.к. библиотека зарегистрирована одна на один конкретный сервер.
   Очевидно
 
3 - 20.02.20 - 15:39
(0) какая-то муть, тема "Закрытие неактивных сеансов", в сообщении про "Зависшие сессии", а в (2) про подключение через "COM" а агенту сервера и не зарегистрированные компоненты... вы уж определитесь что вы хотите ...
   Очевидно
 
4 - 20.02.20 - 15:49
(0)
Про зависшие и неактивные сеансы - думаю нужно копать в сторону "1С RAS".
про "подключиться к агенту сервера через Com объект" - стоит ещё раз подумать откуда и куда вы собираетесь соединяться...
   LOLYBUF
 
5 - 20.02.20 - 17:06
Совсем недавно реализовывал похожую вещь:


    Соединитель     = Новый COMОбъект("V83.COMConnector");
    СоединениеСАгентом     = Соединитель.ConnectAgent("b3");
    Clusters         = СоединениеСАгентом.GetClusters();
    
    для Каждого Кластер из Clusters Цикл
        СоединениеСАгентом.Authenticate(Кластер,"","");
        WorkingProcesses = СоединениеСАгентом.GetWorkingProcesses(Кластер);
        Базы = СоединениеСАгентом.GetInfoBases(Кластер);
        Для каждого База  Из Базы Цикл
            Если Врег(База.Name) = ВРЕГ("trade") Тогда
                Сеансы = СоединениеСАгентом.GetInfoBaseSessions(Кластер,База);
                Для Каждого Сеанс из Сеансы Цикл
            //Закрываешь сеанс        

        КонецЦикла;
            КонецЕсли; 
        КонецЦикла; 
    КонецЦикла;
   LOLYBUF
 
6 - 20.02.20 - 17:06
Почему такая стремная табуляция получается????
   LOLYBUF
 
7 - 20.02.20 - 17:10
Например вот закрытие сеанса через определенный срок:


Если Сеанс.LastActiveAt <= КрайнийСрок Тогда
    СоединениеСАгентом.TerminateSession(Кластер, Сеанс);
КонецЕсли
   Radion
 
8 - 20.02.20 - 17:19
(7) Спасибо. Да, обработка есть, не проблема. Посоветовали программно предварительно регистрировать нужную dll а затем уже подключаться к нужному агенту сервера и делать что требуется.

Список тем форума
Рекламное место пустует  Рекламное место пустует
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.