Ограничение на количество запущенных сеансов 1с
Здравствуйте , может у кого- то сталкивался с подобным. необходимо ограничить количество запущенных сеансов (баз) 1с для пользователей на сервере терминалов.
Проблема в том что на сервере работают примерно 10-15 человек (из них 9 пользователей которые работаю непосредственно с 1с) некоторые из них запускают по 5- 6 сеансов 1с и из-за этого у других пользователей нереально медленно формируются стандартные отчеты.
Возможно ли какими либо средствами подсчитать количество запущенных сеансов и поставить запрет на запуск новых (например заперт за загрузку 3-го сеанса по счету )
Проблема в том что на сервере работают примерно 10-15 человек (из них 9 пользователей которые работаю непосредственно с 1с) некоторые из них запускают по 5- 6 сеансов 1с и из-за этого у других пользователей нереально медленно формируются стандартные отчеты.
Возможно ли какими либо средствами подсчитать количество запущенных сеансов и поставить запрет на запуск новых (например заперт за загрузку 3-го сеанса по счету )
По теме из базы знаний
Найденные решения
На уровне батника так:
"*" в tasklist не прокатывают, поэтому возможно придется вызывать 3 раза для 1cv8.exe, 1cv8с.exe и 1cv8s.exe и анализировать результаты.
Есть некоторые шансы переделать запрос через COM-объект из
И можно копнуть в сторону скрипта на powershell
tasklist /FI "IMAGENAME eq 1cv8.exe" /FI "USERNAME eq %username%"Есть некоторые шансы переделать запрос через COM-объект из
И можно копнуть в сторону скрипта на powershell
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(3) вот так:
А потом считайте
ТекНомерСоединения = НомерСоединенияИнформационнойБазы();
УИДПользюка = ПользователиИнформационнойБазы.ТекущийПользователь().УникальныйИдентификатор;
МассивСоединений = ПолучитьСоединенияИнформационнойБазы();
Для Каждого ТекСоединение Из МассивСоединений Цикл
Если (ТекСоединение.ИмяПриложения = "1CV8")
И (НЕ ТекСоединение.НомерСоединения = ТекНомерСоединения)
И (НЕ ТекСоединение.Пользователь = Неопределено)
И (ТекСоединение.Пользователь.УникальныйИдентификатор = УИДПользюка) Тогда
Возврат "Вот он уже есть в базе";
КонецЕсли;
КонецЦикла;
ПоказатьА потом считайте
(4) Это не совсем то, так он считает соединение с одной базой , а нужно что бы общее количество соединений с разными базами
Например в списке баз у пользователя
База БП № 1
База БП № 2
Копия Базы БП №1
Копия Базы БП №2
Необходимо что бы пользователь работал только с тремя базами (например он запустил 3 сеанса Базы БП №1 ) и при попытки запустить любой другой сеанс выдавалось бы предупреждение
Например в списке баз у пользователя
База БП № 1
База БП № 2
Копия Базы БП №1
Копия Базы БП №2
Необходимо что бы пользователь работал только с тремя базами (например он запустил 3 сеанса Базы БП №1 ) и при попытки запустить любой другой сеанс выдавалось бы предупреждение
(8) так что пользователю запрещать пользоваться базами?
Ну тогда это уже к админам. Скорее всего можно включить политику на количество запущенных процессов 1С.
Но подход у вас не правильный, просто объясните, чтобы не открывали много баз, раз у вас сервер слабый вот и все!
Ну тогда это уже к админам. Скорее всего можно включить политику на количество запущенных процессов 1С.
Но подход у вас не правильный, просто объясните, чтобы не открывали много баз, раз у вас сервер слабый вот и все!
(11) Да 100500 раз уже объясняли - пару недель держатся а дальше все по старому (а полная Ж в отчетный период ) , а потом звонят и жалуются что 1с не фига не работает. (ОСВ по счету по одному контрагенту формируется более 30 минут !!!!) А поход я думаю корректный вы же не работаете с более 4-мя базами одновременно 3 еще куда не шло , но более 3-х баз которые каждая из которых съедает 200 Мб памяти и при этом простаивает и к тому же мешает работать другим у которых запущен только 1 сеанс более чем корректен
(14) Мы фирма франч и просто обслуживаем клиентов, про сервер уже говорили - это вопрос их системных администраторов (которые кстати уволились недавно) но вопросы по 1с ложится на наши плечи. И практически получается Пинг-Понг мы отсылаем к системным админ. типа сервер уже не справляется с нагрузкой , а они к нам типа сервер работает нормально и проблема в 1с. А клиенту важно что бы все работало и не важно чья это проблема. Пока решение "килять процессы 1с" вижу как временное решение проблемы , которое к тому же будет обсуждаться с клиентом , если предложенный способ будет работать
(16) Ну вы что клиентов не знаете ? Улучшение сервере - конечно вариант , тут надо дождаться новых системных администраторов. Но вот монитор и что бы сами решали - это перебор , не будут они брать такую ответственность на себя. У них извечный вопрос - "А Вы то тогда нам на что ?"
На уровне батника так:
"*" в tasklist не прокатывают, поэтому возможно придется вызывать 3 раза для 1cv8.exe, 1cv8с.exe и 1cv8s.exe и анализировать результаты.
Есть некоторые шансы переделать запрос через COM-объект из
И можно копнуть в сторону скрипта на powershell
tasklist /FI "IMAGENAME eq 1cv8.exe" /FI "USERNAME eq %username%"Есть некоторые шансы переделать запрос через COM-объект из
И можно копнуть в сторону скрипта на powershell
(6)
Это хороший вариант , надо попробовать , можно думаю только 2 раза запускать , так как 1cv8s.exe это только вызов списка баз он не сильно грузит систему
tasklist /FI "IMAGENAME eq 1cv8.exe" /FI "USERNAME eq %username%"
Это хороший вариант , надо попробовать , можно думаю только 2 раза запускать , так как 1cv8s.exe это только вызов списка баз он не сильно грузит систему
Подменить ярлык 1С на общем рабочем столе сервера на ярлык к батнику со значком 1С. Для сообщения об ошибке можно использовать
rem chcp 1251
rem команда выше может пригодиться, чтобы не перекодировать сообщение об ошибке в кодировку 866
msg %username% Превышено максимально допустимое количество запущенных баз!
Я бы помониторил сервер на предмет в каком месте тормоза и затыки. Может оперативной памяти надо увеличить или диск(овый массив) не справляется с количеством одновременных потоков. Хотя если база файловая - большого эффекта не будет.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот
