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

Потерянные лицензии на файловых базах

Потерянные лицензии на файловых базах
Я
   nowhere95
 
22.03.19 - 09:15
Платформа 8.3.13.1644, файловые базы УТ11 и несколько БП. УТ 11 расшарена по вебу и несколько пользователей работают удаленно, остальные в терминале. Фирма небольшая, всего 10 программных лицензий. За день до трех лицензий уходит в "никуда", т.е. реально работают 7 человек, для восьмого лицензий нет. Были проблемы с вылетом веб-пользователей из-за плохого канала, но решил настройкой параметром спящего и пассивного режимов - пользователи автоматически отключаются. Но проблему с занятыми лицензиями не решило. Есть ли средство чтобы понять куда и кем расходуются лицензии и соответственно возможность освобождать лицензии? Перезагрузка сервера плохой вариант (
 
 
   Фрэнки
 
1 - 22.03.19 - 09:26
но сам по себе этот "плохой вариант" насколько помогает? Может он и не помогает вовсе?
   zva
 
2 - 22.03.19 - 09:37
т.е. реально работают 7 человек…
Один человек открыл УТ и две БП и "съел" 3 лицензии.
   nowhere95
 
3 - 22.03.19 - 10:32
Фрэнки, пользователь из активных пропадает, по крайней мере в конфигураторе. А вот освобождается ли лицензия? Как можно это проконтролировать?

zva, там 10 лицензий по одной. В таком случае занимается одна лицензия.
   cons24
 
4 - 22.03.19 - 10:51
(3) "В таком случае занимается одна лицензия." - фигушки, Фрэнки прав.
   МимохожийОднако
 
5 - 22.03.19 - 10:53
Еще есть фоновые задания. Скорее всего они кушают лицензии.
   bolobol
 
6 - 22.03.19 - 11:44
(5) Фоновые в файловой кушают лицензии?
   hhhh
 
7 - 22.03.19 - 12:04
(6) ну хотя бы одну на всех должны кушать.
   bolobol
 
8 - 22.03.19 - 12:44
(7) Так её и скушал клиент-владелец фоновых заданий. Или файловая база в самом файле фоновые задания запускает?, прямо на микрухе жёсткого диска...
   nowhere95
 
9 - 22.03.19 - 12:47
hhhh, фоновые задания запускаются в файловой базе когда хоть один пользователь вошел в базу, т.е. под его же лицензией.
Но тут есть связка с IIS, но он точно сам 1с не запускает ;)
   nowhere95
 
10 - 22.03.19 - 13:00
Коллеги, давайте я упрощу вопрос. Проблема началась после внедрения IIS и удаленных пользователей. Для удаленных и неактивных пользователей я нашел решение в виде "настройкой параметров спящего и пассивного режимов", которое рекомендует 1С. Но есть подозрение, что завершение работы пользователя происходит (факт), но лицензия не освобождается. Есть мнения?
   nowhere95
 
11 - 22.03.19 - 13:07
Да. проверил. В одном терминальном сеансе берется одна лицензия на все открытые базы.
   bolobol
 
12 - 22.03.19 - 13:48
(10) Лицензия освобождается крайне не быстро. Через минут 30 я устал ждать. Такая же проблема.
   Garykom
 
13 - 22.03.19 - 13:54
(0) Можно веб-сервер перезагружать ))
   Garykom
 
14 - 22.03.19 - 13:54
(13)+ В смысле рестарт службы, но это тоже плохое решение.
   Garykom
 
15 - 22.03.19 - 14:04
Еще можно отреверсинженерить http протокол и написать свою прокладку которая кое что делает.

Или лучше банально запретить вход в базу(ы) с одинаковым логином.
Чтобы юзер правильно выходил из сеансов и не мог зайти если уже висит на нем лицуха.
   nowhere95
 
16 - 22.03.19 - 14:12
(15) Т.е. ты утверждаешь, лицензию держит IIS?
Запретить вход с одинаковым логином не пройдет. Я же выше писал, что пользователя в 1с нет.
   Garykom
 
17 - 22.03.19 - 14:22
(16) "Модуль расширения веб-сервера" нужное число лицензий по кол-ву сеансов текущих держит.

Делай логины с паролями, иначе никак.
   nowhere95
 
18 - 22.03.19 - 14:29
(17) Не совсем понял, должен быть не пустой пароль пользователя на базу? А что это дает?
   Garykom
 
19 - 22.03.19 - 14:33
(18) Даст защиту от входа пользователя который неправильно закрыл сеанс, под другим чужим логином ))
   nowhere95
 
20 - 22.03.19 - 14:44
Либо я дурак, либо таки пятница) Проблема входа под другим логином не стоит, выход неактивного пользователя из базы происходит через 5-6 минут автоматически средствами 1С. Вот только лицензия похоже не освобождается (
   Garykom
 
21 - 22.03.19 - 14:49
Короче:
1. Сносим IIS
2. Ставим 10 копий апача (служб) на разных портах
3. Настраиваем хитрую маршрутизацию для входящих чтобы отправляла на нужный порт и нужный свободный апач
4. Если выход пользователя произошел то средствами 1С перезапускаем службу апача нужного.
5. Профит
   Фрэнки
 
22 - 22.03.19 - 14:49
(20) он имеет ввиду ситуацию, что при повторном входе одного из пользователей происходит выдача новой лицензии под новый сеанс, хотя можно было бы аккуратно зайти так, чтобы подхватить прежнюю лицензию от предыдущего сеанса. Но нужно точно-точно совпасть с этим предыдущим сеансом.

На древних релизах такого головняка не было, но на свежих платформах такое поведение у баз отмечается.
   Garykom
 
23 - 22.03.19 - 15:00
(21)+ Маршрутизация в простейшем виде это банальный редирект на php где определяем какой из апачей свободен и туда и отправляем.
Для веб-клиентов это должно нормально работать.
https://www.internet-technologies.ru/articles/kak-sdelat-redirekt-na-php.html

Для тонких клиентов уже уже сложнее
   Garykom
 
24 - 22.03.19 - 15:15
Хм можно проще сделать вариант если каждому пользователю можно выдать свою уникальную ссылку (url) то умная маршрутизация не нужна.
Но перезапуск апача по выходу все равно сделать.
   Sysanin_1ц
 
25 - 22.03.19 - 19:01
(0) Попробуй платформу 1с другую поставить. Бывает что некоторые релизы платформы сеансы не освобождают вовремя. Это такой плавающий глюк от релиза к релизу. Мы в таком случае ставили другие платформы и становилось лучше.
   Winnie Buh
 
26 - 22.03.19 - 19:51
ещё одной из причин залипания лицензий на x64 терминальном серваке может быть процесс splwow64.exe, который запускается при печати и завершается только через некоторое время после окончания печати,
если же в этот момент закрыть 1С, то терминальная сессия не закроется и лицензия не освободится
   Garykom
 
27 - 22.03.19 - 19:59
(26) Как я ненавижу кривые win-принтеры на терминальном сервере ))
   mistеr
 
28 - 22.03.19 - 20:49
(26) Каким образом процесс splwow64.exe может держать 1С-ную лицензию?
   Провинциальный 1сник
 
29 - 22.03.19 - 21:16
(23)  "Маршрутизация в простейшем виде это банальный редирект на php где определяем какой из апачей свободен и туда и отправляем. Для веб-клиентов это должно нормально работать. "
Нет, не будет. Нюанс в том, что в 1с есть такое понятие как "соединение", которое в случае опубликованной через веб базы должно поддерживаться конкретным веб-сервером. То есть, если ты поднял соединение на одном сервере, а потом дергаешь серверный вызов на другом - 1с вылетит с ошибкой.
Именно поэтому и пришлось делать сервис с трассировкой, чтобы повторные обращения от клиента шли туда, где изначально был инициирован сеанс. Вот это решение http://catalog.mista.ru/public/242527/
   Garykom
 
30 - 22.03.19 - 21:47
(29) Редирект идет до начала соединения а не в процессе
 
 Рекламное место пустует
   Garykom
 
31 - 22.03.19 - 22:02
   Garykom
 
32 - 22.03.19 - 22:03
(31) Речь шла про веб-клиент а не тонкий клиент, там сразу написал что все сложнее.
Но спасибо за подсказку готового решения для тонких на ИС
   МимохожийОднако
 
33 - 22.03.19 - 22:15
   Провинциальный 1сник
 
34 - 23.03.19 - 08:38
(30) Каждый серверный вызов это отдельный http-запрос, и он должен поступить именно на тот веб-сервер, на котором установлено соединение. Случайно выбирать нельзя.
   Cyberhawk
 
35 - 23.03.19 - 13:29
Время засыпания поменьше поставь и лицензия будет освобождаться быстрее
   Cyberhawk
 
36 - 23.03.19 - 13:29
Время завершения можешь не трогать вообще, т.к. оно уже на потребление лицензии спящим сеансом не влияет
   nowhere95
 
37 - 24.03.19 - 11:20
(29) Как я понимаю такое решение сработает в случае, если сервер расположен локально. В данном случае сервер расположен в облаке, подключаются в основном из офиса. Т.е. по IP определить клиента не получится, т.к. будет один внешний.
   nowhere95
 
38 - 24.03.19 - 11:24
(35) Время сейчас установлено на 300 секунд, завершение - 10. Это работает - работа пользователя завершается, а лицензия похоже так и висит.
   Cyberhawk
 
39 - 24.03.19 - 13:35
"лицензия похоже так и висит" // Вроде это довольно просто проверить / воспроизвести. Не должна висеть после засыпания сеанса. Спящий сеанс или нет видно в консоли кластера. В случае несоответствия поведения ожидаемому пиши вендору ошибку, перед этим только платформу обновить не забудь. Короче действуй)
   nowhere95
 
40 - 24.03.19 - 13:53
(39) Cyberhawk, базы файловые, если был бы сервер 1С - не было вопроса.


Список тем форума
Рекламное место пустует  Рекламное место пустует
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.